vendor: 6,709 bytes, lines 1-10
1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/AtelierV2Section-Cua_IQbO.js","assets/realCockpitRuntime-BFcvKTRp.js","assets/eye-4VqD_-7P.js","assets/memoContent-7h4qbRFv.js","assets/AtelierV2Section-CppDWkPn.css","assets/TutorialExperience-5ry8LDJZ.js"])))=>i.map(i=>d[i]); 2var B1=Object.defineProperty;var U1=(t,n,r)=>n in t?B1(t,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[n]=r;var eu=(t,n,r)=>U1(t,typeof n!="symbol"?n+"":n,r);function V1(t,n){for(var r=0;r<n.length;r++){const i=n[r];if(typeof i!="string"&&!Array.isArray(i)){for(const s in i)if(s!=="default"&&!(s in t)){const a=Object.getOwnPropertyDescriptor(i,s);a&&Object.defineProperty(t,s,a.get?a:{enumerable:!0,get:()=>i[s]})}}}return Object.freeze(Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}))}(function(){const n=document.createElement("link").relList;if(n&&n.supports&&n.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))i(s);new MutationObserver(s=>{for(const a of s)if(a.type==="childList")for(const o of a.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&i(o)}).observe(document,{childList:!0,subtree:!0});function r(s){const a={};return s.integrity&&(a.integrity=s.integrity),s.referrerPolicy&&(a.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?a.credentials="include":s.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function i(s){if(s.ep)return;s.ep=!0;const a=r(s);fetch(s.href,a)}})();const H1="modulepreload",Y1=function(t){return"/"+t},tu={},Vr=function(n,r,i){let s=Promise.resolve();if(r&&r.length>0){document.getElementsByTagName("link");const o=document.querySelector("meta[property=csp-nonce]"),c=(o==null?void 0:o.nonce)||(o==null?void 0:o.getAttribute("nonce"));s=Promise.allSettled(r.map(l=>{if(l=Y1(l),l in tu)return;tu[l]=!0;const d=l.endsWith(".css"),p=d?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${l}"]${p}`))return;const u=document.createElement("link");if(u.rel=d?"stylesheet":H1,d||(u.as="script"),u.crossOrigin="",u.href=l,c&&u.setAttribute("nonce",c),document.head.appendChild(u),d)return new Promise((g,f)=>{u.addEventListener("load",g),u.addEventListener("error",()=>f(new Error(`Unable to preload CSS for ${l}`)))})}))}function a(o){const c=new Event("vite:preloadError",{cancelable:!0});if(c.payload=o,window.dispatchEvent(c),!c.defaultPrevented)throw o}return s.then(o=>{for(const c of o||[])c.status==="rejected"&&a(c.reason);return n().catch(a)})};function G1(t){return t&&t.__esModule&&Object.prototype.hasOwnProperty.call(t,"default")?t.default:t}var Dm={exports:{}},Ho={},zm={exports:{}},ye={};/** 3 * @license React 4 * react.production.min.js 5 * 6 * Copyright (c) Facebook, Inc. and its affiliates. 7 * 8 * This source code is licensed under the MIT license found in the 9 * LICENSE file in the root directory of this source tree. 10 */var ia=Symbol.for("react.element"),W1=Symbol.for("react.portal"),Q1=Symbol.for("react.fragment"),Z1=Symbol.for("react.strict_mode"),K1=Symbol.for("react.profiler"),J1=Symbol.for("react.provider"),$1=Symbol.for("react.context"),X1=Symbol.for("react.forward_ref"),e0=Symbol.for("react.suspense"),t0=Symbol.for("react.memo"),n0=Symbol.for("react.lazy"),nu=Symbol.iterator;function r0(t){return t===null||typeof t!="object"?null:(t=nu&&t[nu]||t["@@iterator"],typeof t=="function"?t:null)}var Bm={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},Um=Object.assign,Vm={};function Fi(t,n,r){this.props=t,this.context=n,this.refs=Vm,this.updater=r||Bm}Fi.prototype.isReactComponent={};Fi.prototype.setState=function(t,n){if(typeof t!="object"&&typeof t!="function"&&t!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,t,n,"setState")};Fi.prototype.forceUpdate=function(t){this.updater.enqueueForceUpdate(this,t,"forceUpdate")};function Hm(){}Hm.prototype=Fi.prototype;function kd(t,n,r){this.props=t,this.context=n,this.refs=Vm,this.updater=r||Bm}var Ad=kd.prototype=new Hm;Ad.constructor=kd;Um(Ad,Fi.prototype);Ad.isPureReactComponent=!0;var ru=Array.isArray,Ym=Object.prototype.hasOwnProperty,Sd={current:null},Gm={key:!0,ref:!0,__self:!0,__source:!0};function Wm(t,n,r){var i,s={},a=null,o=null;if(n!=null)for(i in n.ref!==void 0&&(o=n.ref),n.key!==void 0&&(a=""+n.key),n)Ym.call(n,i)&&!Gm.hasOwnProperty(i)&&(s[i]=n[i]);var c=arguments.length-2;if(c===1)s.children=r;else if(1<c){for(var l=Array(c),d=0;d<c;d++)l[d]=arguments[d+2];s.children=l}if(t&&t.defaultProps)for(i in c=t.defaultProps,c)s[i]===void 0&&(s[i]=c[i]);return{$$typeof:ia,type:t,key:a,ref:o,props:s,_owner:Sd.current}}function i0(t,n){return{$$typeof:ia,type:t.type,key:n,ref:t.ref,props:t.props,_owner:t._owner}}function Ed(t){return typeof t=="object"&&t!==null&&t.$$typeof===ia}function s0(t){var n={"=":"=0",":":"=2"};return"$"+t.replace(/[=:]/g,function(r){return n[r]})}var iu=/\/+/g;function wl(t,n){return typeof t=="object"&&t!==null&&t.key!=null?s0(""+t.key):n.toString(36)}function Ka(t,n,r,i,s){var a=typeof t;(a==="undefined"||a==="boolean")&&(t=null);var o=!1;if(t===null)o=!0;else switch(a){case"string":case"number":o=!0;break;case"object":switch(t.$$typeof){case ia:case W1:o=!0}}if(o)return o=t,s=s(o),t=i===""?"."+wl(o,0):i,ru(s)?(r="",t!=null&&(r=t.replace(iu,"$&/")+"/"),Ka(s,n,r,"",function(d){return d})):s!=null&&(Ed(s)&&(s=i0(s,r+(!s.key||o&&o.key===s.key?"":(""+s.key).replace(iu,"$&/")+"/")+t)),n.push(s)),1;if(o=0,i=i===""?".":i+":",ru(t))for(var c=0;c<t.length;c++){a=t[c];var l=i+wl(a,c);o+=Ka(a,n,r,l,s)}else if(l=r0(t),typeof l=="function")for(t=l.call(t),c=0;!(a=t.next()).done;)a=a.value,l=i+wl(a,c++),o+=Ka(a,n,r,l,s);else if(a==="object")throw n=String(t),Error("Objects are not valid as a React child (found: "+(n==="[object Object]"?"object with keys {"+Object.keys(t).join(", ")+"}":n)+"). If you meant to render a collection of children, use an array instead.");return o}function La(t,n,r){if(t==null)return t;var i=[],s=0;return Ka(t,i,"","",function(a){return n.call(r,a,s++)}),i}function a0(t){if(t._status===-1){var n=t._result;n=n(),n.then(function(r){(t._status===0||t._status===-1)&&(t._status=1,t._result=r)},function(r){(t._status===0||t._status===-1)&&(t._status=2,t._result=r)}),t._status===-1&&(t._status=0,t._result=n)}if(t._status===1)return t._result.default;throw t._result}var vt={current:null},Ja={transition:null},o0={ReactCurrentDispatcher:vt,ReactCurrentBatchConfig:Ja,ReactCurrentOwner:Sd};function Qm(){throw Error("act(...) is not supported in production builds of React.")}
vendor: 5,127 bytes, lines 10-26
10ye.Children={map:La,forEach:function(t,n,r){La(t,function(){n.apply(this,arguments)},r)},count:function(t){var n=0;return La(t,function(){n++}),n},toArray:function(t){return La(t,function(n){return n})||[]},only:function(t){if(!Ed(t))throw Error("React.Children.only expected to receive a single React element child.");return t}};ye.Component=Fi;ye.Fragment=Q1;ye.Profiler=K1;ye.PureComponent=kd;ye.StrictMode=Z1;ye.Suspense=e0;ye.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=o0;ye.act=Qm;ye.cloneElement=function(t,n,r){if(t==null)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+t+".");var i=Um({},t.props),s=t.key,a=t.ref,o=t._owner;if(n!=null){if(n.ref!==void 0&&(a=n.ref,o=Sd.current),n.key!==void 0&&(s=""+n.key),t.type&&t.type.defaultProps)var c=t.type.defaultProps;for(l in n)Ym.call(n,l)&&!Gm.hasOwnProperty(l)&&(i[l]=n[l]===void 0&&c!==void 0?c[l]:n[l])}var l=arguments.length-2;if(l===1)i.children=r;else if(1<l){c=Array(l);for(var d=0;d<l;d++)c[d]=arguments[d+2];i.children=c}return{$$typeof:ia,type:t.type,key:s,ref:a,props:i,_owner:o}};ye.createContext=function(t){return t={$$typeof:$1,_currentValue:t,_currentValue2:t,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null},t.Provider={$$typeof:J1,_context:t},t.Consumer=t};ye.createElement=Wm;ye.createFactory=function(t){var n=Wm.bind(null,t);return n.type=t,n};ye.createRef=function(){return{current:null}};ye.forwardRef=function(t){return{$$typeof:X1,render:t}};ye.isValidElement=Ed;ye.lazy=function(t){return{$$typeof:n0,_payload:{_status:-1,_result:t},_init:a0}};ye.memo=function(t,n){return{$$typeof:t0,type:t,compare:n===void 0?null:n}};ye.startTransition=function(t){var n=Ja.transition;Ja.transition={};try{t()}finally{Ja.transition=n}};ye.unstable_act=Qm;ye.useCallback=function(t,n){return vt.current.useCallback(t,n)};ye.useContext=function(t){return vt.current.useContext(t)};ye.useDebugValue=function(){};ye.useDeferredValue=function(t){return vt.current.useDeferredValue(t)};ye.useEffect=function(t,n){return vt.current.useEffect(t,n)};ye.useId=function(){return vt.current.useId()};ye.useImperativeHandle=function(t,n,r){return vt.current.useImperativeHandle(t,n,r)};ye.useInsertionEffect=function(t,n){return vt.current.useInsertionEffect(t,n)};ye.useLayoutEffect=function(t,n){return vt.current.useLayoutEffect(t,n)};ye.useMemo=function(t,n){return vt.current.useMemo(t,n)};ye.useReducer=function(t,n,r){return vt.current.useReducer(t,n,r)};ye.useRef=function(t){return vt.current.useRef(t)};ye.useState=function(t){return vt.current.useState(t)};ye.useSyncExternalStore=function(t,n,r){return vt.current.useSyncExternalStore(t,n,r)};ye.useTransition=function(){return vt.current.useTransition()};ye.version="18.3.1";zm.exports=ye;var m=zm.exports;const Zm=G1(m),l0=V1({__proto__:null,default:Zm},[m]);/** 11 * @license React 12 * react-jsx-runtime.production.min.js 13 * 14 * Copyright (c) Facebook, Inc. and its affiliates. 15 * 16 * This source code is licensed under the MIT license found in the 17 * LICENSE file in the root directory of this source tree. 18 */var c0=m,d0=Symbol.for("react.element"),p0=Symbol.for("react.fragment"),u0=Object.prototype.hasOwnProperty,h0=c0.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,m0={key:!0,ref:!0,__self:!0,__source:!0};function Km(t,n,r){var i,s={},a=null,o=null;r!==void 0&&(a=""+r),n.key!==void 0&&(a=""+n.key),n.ref!==void 0&&(o=n.ref);for(i in n)u0.call(n,i)&&!m0.hasOwnProperty(i)&&(s[i]=n[i]);if(t&&t.defaultProps)for(i in n=t.defaultProps,n)s[i]===void 0&&(s[i]=n[i]);return{$$typeof:d0,type:t,key:a,ref:o,props:s,_owner:h0.current}}Ho.Fragment=p0;Ho.jsx=Km;Ho.jsxs=Km;Dm.exports=Ho;var e=Dm.exports,uc={},Jm={exports:{}},Pt={},$m={exports:{}},Xm={};/** 19 * @license React 20 * scheduler.production.min.js 21 * 22 * Copyright (c) Facebook, Inc. and its affiliates. 23 * 24 * This source code is licensed under the MIT license found in the 25 * LICENSE file in the root directory of this source tree. 26 */(function(t){function n(P,D){var M=P.length;P.push(D);e:for(;0<M;){var re=M-1>>>1,H=P[re];if(0<s(H,D))P[re]=D,P[M]=H,M=re;else break e}}function r(P){return P.length===0?null:P[0]}function i(P){if(P.length===0)return null;var D=P[0],M=P.pop();if(M!==D){P[0]=M;e:for(var re=0,H=P.length,se=H>>>1;re<se;){var ie=2*(re+1)-1,he=P[ie],Le=ie+1,xe=P[Le];if(0>s(he,M))Le<H&&0>s(xe,he)?(P[re]=xe,P[Le]=M,re=Le):(P[re]=he,P[ie]=M,re=ie);else if(Le<H&&0>s(xe,M))P[re]=xe,P[Le]=M,re=Le;else break e}}return D}function s(P,D){var M=P.sortIndex-D.sortIndex;return M!==0?M:P.id-D.id}if(typeof performance=="object"&&typeof performance.now=="function"){var a=performance;t.unstable_now=function(){return a.now()}}else{var o=Date,c=o.now();t.unstable_now=function(){return o.now()-c}}var l=[],d=[],p=1,u=null,g=3,f=!1,L=!1,v=!1,y=typeof setTimeout=="function"?setTimeout:null,h=typeof clearTimeout=="function"?clearTimeout:null,b=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);
vendor: 9,472 bytes, lines 26-35
26function x(P){for(var D=r(d);D!==null;){if(D.callback===null)i(d);else if(D.startTime<=P)i(d),D.sortIndex=D.expirationTime,n(l,D);else break;D=r(d)}}function A(P){if(v=!1,x(P),!L)if(r(l)!==null)L=!0,pe(w);else{var D=r(d);D!==null&&ee(A,D.startTime-P)}}function w(P,D){L=!1,v&&(v=!1,h(j),j=-1),f=!0;var M=g;try{for(x(D),u=r(l);u!==null&&(!(u.expirationTime>D)||P&&!_());){var re=u.callback;if(typeof re=="function"){u.callback=null,g=u.priorityLevel;var H=re(u.expirationTime<=D);D=t.unstable_now(),typeof H=="function"?u.callback=H:u===r(l)&&i(l),x(D)}else i(l);u=r(l)}if(u!==null)var se=!0;else{var ie=r(d);ie!==null&&ee(A,ie.startTime-D),se=!1}return se}finally{u=null,g=M,f=!1}}var S=!1,E=null,j=-1,O=5,k=-1;function _(){return!(t.unstable_now()-k<O)}function N(){if(E!==null){var P=t.unstable_now();k=P;var D=!0;try{D=E(!0,P)}finally{D?I():(S=!1,E=null)}}else S=!1}var I;if(typeof b=="function")I=function(){b(N)};else if(typeof MessageChannel<"u"){var ce=new MessageChannel,K=ce.port2;ce.port1.onmessage=N,I=function(){K.postMessage(null)}}else I=function(){y(N,0)};function pe(P){E=P,S||(S=!0,I())}function ee(P,D){j=y(function(){P(t.unstable_now())},D)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(P){P.callback=null},t.unstable_continueExecution=function(){L||f||(L=!0,pe(w))},t.unstable_forceFrameRate=function(P){0>P||125<P?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):O=0<P?Math.floor(1e3/P):5},t.unstable_getCurrentPriorityLevel=function(){return g},t.unstable_getFirstCallbackNode=function(){return r(l)},t.unstable_next=function(P){switch(g){case 1:case 2:case 3:var D=3;break;default:D=g}var M=g;g=D;try{return P()}finally{g=M}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(P,D){switch(P){case 1:case 2:case 3:case 4:case 5:break;default:P=3}var M=g;g=P;try{return D()}finally{g=M}},t.unstable_scheduleCallback=function(P,D,M){var re=t.unstable_now();switch(typeof M=="object"&&M!==null?(M=M.delay,M=typeof M=="number"&&0<M?re+M:re):M=re,P){case 1:var H=-1;break;case 2:H=250;break;case 5:H=1073741823;break;case 4:H=1e4;break;default:H=5e3}return H=M+H,P={id:p++,callback:D,priorityLevel:P,startTime:M,expirationTime:H,sortIndex:-1},M>re?(P.sortIndex=M,n(d,P),r(l)===null&&P===r(d)&&(v?(h(j),j=-1):v=!0,ee(A,M-re))):(P.sortIndex=H,n(l,P),L||f||(L=!0,pe(w))),P},t.unstable_shouldYield=_,t.unstable_wrapCallback=function(P){var D=g;return function(){var M=g;g=D;try{return P.apply(this,arguments)}finally{g=M}}}})(Xm);$m.exports=Xm;var g0=$m.exports;/** 27 * @license React 28 * react-dom.production.min.js 29 * 30 * Copyright (c) Facebook, Inc. and its affiliates. 31 * 32 * This source code is licensed under the MIT license found in the 33 * LICENSE file in the root directory of this source tree. 34 */var f0=m,Mt=g0;function V(t){for(var n="https://reactjs.org/docs/error-decoder.html?invariant="+t,r=1;r<arguments.length;r++)n+="&args[]="+encodeURIComponent(arguments[r]);return"Minified React error #"+t+"; visit "+n+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var eg=new Set,_s={};function Hr(t,n){ki(t,n),ki(t+"Capture",n)}function ki(t,n){for(_s[t]=n,t=0;t<n.length;t++)eg.add(n[t])}var On=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),hc=Object.prototype.hasOwnProperty,x0=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,su={},au={};function L0(t){return hc.call(au,t)?!0:hc.call(su,t)?!1:x0.test(t)?au[t]=!0:(su[t]=!0,!1)}function v0(t,n,r,i){if(r!==null&&r.type===0)return!1;switch(typeof n){case"function":case"symbol":return!0;case"boolean":return i?!1:r!==null?!r.acceptsBooleans:(t=t.toLowerCase().slice(0,5),t!=="data-"&&t!=="aria-");default:return!1}}function b0(t,n,r,i){if(n===null||typeof n>"u"||v0(t,n,r,i))return!0;if(i)return!1;if(r!==null)switch(r.type){case 3:return!n;case 4:return n===!1;case 5:return isNaN(n);case 6:return isNaN(n)||1>n}return!1}function bt(t,n,r,i,s,a,o){this.acceptsBooleans=n===2||n===3||n===4,this.attributeName=i,this.attributeNamespace=s,this.mustUseProperty=r,this.propertyName=t,this.type=n,this.sanitizeURL=a,this.removeEmptyString=o}var lt={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(t){lt[t]=new bt(t,0,!1,t,null,!1,!1)});[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(t){var n=t[0];lt[n]=new bt(n,1,!1,t[1],null,!1,!1)});["contentEditable","draggable","spellCheck","value"].forEach(function(t){lt[t]=new bt(t,2,!1,t.toLowerCase(),null,!1,!1)});["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(t){lt[t]=new bt(t,2,!1,t,null,!1,!1)});"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(t){lt[t]=new bt(t,3,!1,t.toLowerCase(),null,!1,!1)});["checked","multiple","muted","selected"].forEach(function(t){lt[t]=new bt(t,3,!0,t,null,!1,!1)});["capture","download"].forEach(function(t){lt[t]=new bt(t,4,!1,t,null,!1,!1)});["cols","rows","size","span"].forEach(function(t){lt[t]=new bt(t,6,!1,t,null,!1,!1)});["rowSpan","start"].forEach(function(t){lt[t]=new bt(t,5,!1,t.toLowerCase(),null,!1,!1)});var Nd=/[\-:]([a-z])/g;function Cd(t){return t[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(t){var n=t.replace(Nd,Cd);lt[n]=new bt(n,1,!1,t,null,!1,!1)});"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(t){var n=t.replace(Nd,Cd);lt[n]=new bt(n,1,!1,t,"http://www.w3.org/1999/xlink",!1,!1)});["xml:base","xml:lang","xml:space"].forEach(function(t){var n=t.replace(Nd,Cd);lt[n]=new bt(n,1,!1,t,"http://www.w3.org/XML/1998/namespace",!1,!1)});["tabIndex","crossOrigin"].forEach(function(t){lt[t]=new bt(t,1,!1,t.toLowerCase(),null,!1,!1)});lt.xlinkHref=new bt("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1);["src","href","action","formAction"].forEach(function(t){lt[t]=new bt(t,1,!1,t.toLowerCase(),null,!0,!0)});function _d(t,n,r,i){var s=lt.hasOwnProperty(n)?lt[n]:null;(s!==null?s.type!==0:i||!(2<n.length)||n[0]!=="o"&&n[0]!=="O"||n[1]!=="n"&&n[1]!=="N")&&(b0(n,r,s,i)&&(r=null),i||s===null?L0(n)&&(r===null?t.removeAttribute(n):t.setAttribute(n,""+r)):s.mustUseProperty?t[s.propertyName]=r===null?s.type===3?!1:"":r:(n=s.attributeName,i=s.attributeNamespace,r===null?t.removeAttribute(n):(s=s.type,r=s===3||s===4&&r===!0?"":""+r,i?t.setAttributeNS(i,n,r):t.setAttribute(n,r))))}var Un=f0.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,va=Symbol.for("react.element"),si=Symbol.for("react.portal"),ai=Symbol.for("react.fragment"),Td=Symbol.for("react.strict_mode"),mc=Symbol.for("react.profiler"),tg=Symbol.for("react.provider"),ng=Symbol.for("react.context"),qd=Symbol.for("react.forward_ref"),gc=Symbol.for("react.suspense"),fc=Symbol.for("react.suspense_list"),Fd=Symbol.for("react.memo"),Zn=Symbol.for("react.lazy"),rg=Symbol.for("react.offscreen"),ou=Symbol.iterator;function Gi(t){return t===null||typeof t!="object"?null:(t=ou&&t[ou]||t["@@iterator"],typeof t=="function"?t:null)}var Be=Object.assign,kl;function us(t){if(kl===void 0)try{throw Error()}catch(r){var n=r.stack.trim().match(/\n( *(at )?)/);kl=n&&n[1]||""}return` 35`+kl+t}var Al=!1;function Sl(t,n){if(!t||Al)return"";Al=!0;var r=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(n)if(n=function(){throw Error()},Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(n,[])}catch(d){var i=d}Reflect.construct(t,[],n)}
vendor: 4,203 bytes, lines 35-38
35else{try{n.call()}catch(d){i=d}t.call(n.prototype)}else{try{throw Error()}catch(d){i=d}t()}}catch(d){if(d&&i&&typeof d.stack=="string"){for(var s=d.stack.split(` 36`),a=i.stack.split(` 37`),o=s.length-1,c=a.length-1;1<=o&&0<=c&&s[o]!==a[c];)c--;for(;1<=o&&0<=c;o--,c--)if(s[o]!==a[c]){if(o!==1||c!==1)do if(o--,c--,0>c||s[o]!==a[c]){var l=` 38`+s[o].replace(" at new "," at ");return t.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",t.displayName)),l}while(1<=o&&0<=c);break}}}finally{Al=!1,Error.prepareStackTrace=r}return(t=t?t.displayName||t.name:"")?us(t):""}function y0(t){switch(t.tag){case 5:return us(t.type);case 16:return us("Lazy");case 13:return us("Suspense");case 19:return us("SuspenseList");case 0:case 2:case 15:return t=Sl(t.type,!1),t;case 11:return t=Sl(t.type.render,!1),t;case 1:return t=Sl(t.type,!0),t;default:return""}}function xc(t){if(t==null)return null;if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t;switch(t){case ai:return"Fragment";case si:return"Portal";case mc:return"Profiler";case Td:return"StrictMode";case gc:return"Suspense";case fc:return"SuspenseList"}if(typeof t=="object")switch(t.$$typeof){case ng:return(t.displayName||"Context")+".Consumer";case tg:return(t._context.displayName||"Context")+".Provider";case qd:var n=t.render;return t=t.displayName,t||(t=n.displayName||n.name||"",t=t!==""?"ForwardRef("+t+")":"ForwardRef"),t;case Fd:return n=t.displayName||null,n!==null?n:xc(t.type)||"Memo";case Zn:n=t._payload,t=t._init;try{return xc(t(n))}catch{}}return null}function j0(t){var n=t.type;switch(t.tag){case 24:return"Cache";case 9:return(n.displayName||"Context")+".Consumer";case 10:return(n._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return t=n.render,t=t.displayName||t.name||"",n.displayName||(t!==""?"ForwardRef("+t+")":"ForwardRef");case 7:return"Fragment";case 5:return n;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return xc(n);case 8:return n===Td?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof n=="function")return n.displayName||n.name||null;if(typeof n=="string")return n}return null}function hr(t){switch(typeof t){case"boolean":case"number":case"string":case"undefined":return t;case"object":return t;default:return""}}function ig(t){var n=t.type;return(t=t.nodeName)&&t.toLowerCase()==="input"&&(n==="checkbox"||n==="radio")}function w0(t){var n=ig(t)?"checked":"value",r=Object.getOwnPropertyDescriptor(t.constructor.prototype,n),i=""+t[n];if(!t.hasOwnProperty(n)&&typeof r<"u"&&typeof r.get=="function"&&typeof r.set=="function"){var s=r.get,a=r.set;return Object.defineProperty(t,n,{configurable:!0,get:function(){return s.call(this)},set:function(o){i=""+o,a.call(this,o)}}),Object.defineProperty(t,n,{enumerable:r.enumerable}),{getValue:function(){return i},setValue:function(o){i=""+o},stopTracking:function(){t._valueTracker=null,delete t[n]}}}}function ba(t){t._valueTracker||(t._valueTracker=w0(t))}function sg(t){if(!t)return!1;var n=t._valueTracker;if(!n)return!0;var r=n.getValue(),i="";return t&&(i=ig(t)?t.checked?"true":"false":t.value),t=i,t!==r?(n.setValue(t),!0):!1}function uo(t){if(t=t||(typeof document<"u"?document:void 0),typeof t>"u")return null;try{return t.activeElement||t.body}catch{return t.body}}function Lc(t,n){var r=n.checked;return Be({},n,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:r??t._wrapperState.initialChecked})}function lu(t,n){var r=n.defaultValue==null?"":n.defaultValue,i=n.checked!=null?n.checked:n.defaultChecked;r=hr(n.value!=null?n.value:r),t._wrapperState={initialChecked:i,initialValue:r,controlled:n.type==="checkbox"||n.type==="radio"?n.checked!=null:n.value!=null}}function ag(t,n){n=n.checked,n!=null&&_d(t,"checked",n,!1)}function vc(t,n){ag(t,n);var r=hr(n.value),i=n.type;if(r!=null)i==="number"?(r===0&&t.value===""||t.value!=r)&&(t.value=""+r):t.value!==""+r&&(t.value=""+r);else if(i==="submit"||i==="reset"){t.removeAttribute("value");return}
vendor: 4,366 bytes, line 38
38n.hasOwnProperty("value")?bc(t,n.type,r):n.hasOwnProperty("defaultValue")&&bc(t,n.type,hr(n.defaultValue)),n.checked==null&&n.defaultChecked!=null&&(t.defaultChecked=!!n.defaultChecked)}function cu(t,n,r){if(n.hasOwnProperty("value")||n.hasOwnProperty("defaultValue")){var i=n.type;if(!(i!=="submit"&&i!=="reset"||n.value!==void 0&&n.value!==null))return;n=""+t._wrapperState.initialValue,r||n===t.value||(t.value=n),t.defaultValue=n}r=t.name,r!==""&&(t.name=""),t.defaultChecked=!!t._wrapperState.initialChecked,r!==""&&(t.name=r)}function bc(t,n,r){(n!=="number"||uo(t.ownerDocument)!==t)&&(r==null?t.defaultValue=""+t._wrapperState.initialValue:t.defaultValue!==""+r&&(t.defaultValue=""+r))}var hs=Array.isArray;function xi(t,n,r,i){if(t=t.options,n){n={};for(var s=0;s<r.length;s++)n["$"+r[s]]=!0;for(r=0;r<t.length;r++)s=n.hasOwnProperty("$"+t[r].value),t[r].selected!==s&&(t[r].selected=s),s&&i&&(t[r].defaultSelected=!0)}else{for(r=""+hr(r),n=null,s=0;s<t.length;s++){if(t[s].value===r){t[s].selected=!0,i&&(t[s].defaultSelected=!0);return}n!==null||t[s].disabled||(n=t[s])}n!==null&&(n.selected=!0)}}function yc(t,n){if(n.dangerouslySetInnerHTML!=null)throw Error(V(91));return Be({},n,{value:void 0,defaultValue:void 0,children:""+t._wrapperState.initialValue})}function du(t,n){var r=n.value;if(r==null){if(r=n.children,n=n.defaultValue,r!=null){if(n!=null)throw Error(V(92));if(hs(r)){if(1<r.length)throw Error(V(93));r=r[0]}n=r}n==null&&(n=""),r=n}t._wrapperState={initialValue:hr(r)}}function og(t,n){var r=hr(n.value),i=hr(n.defaultValue);r!=null&&(r=""+r,r!==t.value&&(t.value=r),n.defaultValue==null&&t.defaultValue!==r&&(t.defaultValue=r)),i!=null&&(t.defaultValue=""+i)}function pu(t){var n=t.textContent;n===t._wrapperState.initialValue&&n!==""&&n!==null&&(t.value=n)}function lg(t){switch(t){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function jc(t,n){return t==null||t==="http://www.w3.org/1999/xhtml"?lg(n):t==="http://www.w3.org/2000/svg"&&n==="foreignObject"?"http://www.w3.org/1999/xhtml":t}var ya,cg=function(t){return typeof MSApp<"u"&&MSApp.execUnsafeLocalFunction?function(n,r,i,s){MSApp.execUnsafeLocalFunction(function(){return t(n,r,i,s)})}:t}(function(t,n){if(t.namespaceURI!=="http://www.w3.org/2000/svg"||"innerHTML"in t)t.innerHTML=n;else{for(ya=ya||document.createElement("div"),ya.innerHTML="<svg>"+n.valueOf().toString()+"</svg>",n=ya.firstChild;t.firstChild;)t.removeChild(t.firstChild);for(;n.firstChild;)t.appendChild(n.firstChild)}});function Ts(t,n){if(n){var r=t.firstChild;if(r&&r===t.lastChild&&r.nodeType===3){r.nodeValue=n;return}}t.textContent=n}var bs={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},k0=["Webkit","ms","Moz","O"];Object.keys(bs).forEach(function(t){k0.forEach(function(n){n=n+t.charAt(0).toUpperCase()+t.substring(1),bs[n]=bs[t]})});function dg(t,n,r){return n==null||typeof n=="boolean"||n===""?"":r||typeof n!="number"||n===0||bs.hasOwnProperty(t)&&bs[t]?(""+n).trim():n+"px"}function pg(t,n){t=t.style;for(var r in n)if(n.hasOwnProperty(r)){var i=r.indexOf("--")===0,s=dg(r,n[r],i);r==="float"&&(r="cssFloat"),i?t.setProperty(r,s):t[r]=s}}var A0=Be({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function wc(t,n){if(n){if(A0[t]&&(n.children!=null||n.dangerouslySetInnerHTML!=null))throw Error(V(137,t));if(n.dangerouslySetInnerHTML!=null){if(n.children!=null)throw Error(V(60));if(typeof n.dangerouslySetInnerHTML!="object"||!("__html"in n.dangerouslySetInnerHTML))throw Error(V(61))}if(n.style!=null&&typeof n.style!="object")throw Error(V(62))}}function kc(t,n){if(t.indexOf("-")===-1)return typeof n.is=="str
38ing";switch(t){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var Ac=null;function Od(t){return t=t.target||t.srcElement||window,t.correspondingUseElement&&(t=t.correspondingUseElement),t.nodeType===3?t.parentNode:t}var Sc=null,Li=null,vi=null;function uu(t){if(t=oa(t)){if(typeof Sc!="function")throw Error(V(280));var n=t.stateNode;n&&(n=Zo(n),Sc(t.stateNode,t.type,n))}}function ug(t){Li?vi?vi.push(t):vi=[t]:Li=t}function hg(){if(Li){var t=Li,n=vi;if(vi=Li=null,uu(t),n)for(t=0;t<n.length;t++)uu(n[t])}}function mg(t,n){return t(n)}function gg(){}var El=!1;function fg(t,n,r){if(El)return t(n,r);El=!0;try{return mg(t,n,r)}finally{El=!1,(Li!==null||vi!==null)&&(gg(),hg())}}function qs(t,n){var r=t.stateNode;if(r===null)return null;var i=Zo(r);if(i===null)return null;r=i[n];e:switch(n){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(i=!i.disabled)||(t=t.type,i=!(t==="button"||t==="input"||t==="select"||t==="textarea")),t=!i;break e;default:t=!1}if(t)return null;if(r&&typeof r!="function")throw Error(V(231,n,typeof r));return r}var Ec=!1;if(On)try{var Wi={};Object.defineProperty(Wi,"passive",{get:function(){Ec=!0}}),window.addEventListener("test",Wi,Wi),window.removeEventListener("test",Wi,Wi)}catch{Ec=!1}function S0(t,n,r,i,s,a,o,c,l){var d=Array.prototype.slice.call(arguments,3);try{n.apply(r,d)}catch(p){this.onError(p)}}var ys=!1,ho=null,mo=!1,Nc=null,E0={onError:function(t){ys=!0,ho=t}};function N0(t,n,r,i,s,a,o,c,l){ys=!1,ho=null,S0.apply(E0,arguments)}function C0(t,n,r,i,s,a,o,c,l){if(N0.apply(this,arguments),ys){if(ys){var d=ho;ys=!1,ho=null}else throw Error(V(198));mo||(mo=!0,Nc=d)}}function Yr(t){var n=t,r=t;if(t.alternate)for(;n.return;)n=n.return;else{t=n;do n=t,n.flags&4098&&(r=n.return),t=n.return;while(t)}return n.tag===3?r:null}function xg(t){if(t.tag===13){var n=t.memoizedState;if(n===null&&(t=t.alternate,t!==null&&(n=t.memoizedState)),n!==null)return n.dehydrated}return null}function hu(t){if(Yr(t)!==t)throw Error(V(188))}function _0(t){var n=t.alternate;if(!n){if(n=Yr(t),n===null)throw Error(V(188));return n!==t?null:t}for(var r=t,i=n;;){var s=r.return;if(s===null)break;var a=s.alternate;if(a===null){if(i=s.return,i!==null){r=i;continue}break}if(s.child===a.child){for(a=s.child;a;){if(a===r)return hu(s),t;if(a===i)return hu(s),n;a=a.sibling}throw Error(V(188))}if(r.return!==i.return)r=s,i=a;else{for(var o=!1,c=s.child;c;){if(c===r){o=!0,r=s,i=a;break}if(c===i){o=!0,i=s,r=a;break}c=c.sibling}if(!o){for(c=a.child;c;){if(c===r){o=!0,r=a,i=s;break}if(c===i){o=!0,i=a,r=s;break}c=c.sibling}if(!o)throw Error(V(189))}}if(r.alternate!==i)throw Error(V(190))}if(r.tag!==3)throw Error(V(188));return r.stateNode.current===r?t:n}function Lg(t){return t=_0(t),t!==null?vg(t):null}function vg(t){if(t.tag===5||t.tag===6)return t;for(t=t.child;t!==null;){var n=vg(t);if(n!==null)return n;t=t.sibling}return null}var bg=Mt.unstable_scheduleCallback,mu=Mt.unstable_cancelCallback,T0=Mt.unstable_shouldYield,q0=Mt.unstable_requestPaint,Ye=Mt.unstable_now,F0=Mt.unstable_getCurrentPriorityLevel,Md=Mt.unstable_ImmediatePriority,yg=Mt.unstable_UserBlockingPriority,go=Mt.unstable_NormalPriority,O0=Mt.unstable_LowPriority,jg=Mt.unstable_IdlePriority,Yo=null,mn=null;function M0(t){if(mn&&typeof mn.onCommitFiberRoot=="function")try{mn.onCommitFiberRoot(Yo,t,void 0,(t.current.flags&128)===128)}catch{}}var an=Math.clz32?Math.clz32:I0,R0=Math.log,P0=Math.LN2;function I0(t){return t>>>=0,t===0?32:31-(R0(t)/P0|0)|0}var ja=64,wa=4194304;function ms(t){switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return t&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return t}}function fo(t,n){var r=t.pendingLanes;if(r===0)return 0;var i=0,s=t.suspendedLanes,a=t.pingedLanes,o=r&268435455;if(o!==0){var c=o&~s;c!==0?i=ms(c):(a&=o,a!==0&&(i=ms(a)))}else o=r&~s,o!==0?i=ms(o):a!==0&&(i=ms(a));if(i===0)return 0;if(n!==0&&n!==i&&!(n&s)&&(s=i&-i,a=n&-n,s>=a||s===16&&(a&4194240)!==0))return n;if(i&4&&(i|=r&16),n=t.entangledLanes,n!==0)for(t=t.entanglements,n&=i;0<n;)r=31-an(n),s=1<<r,i|=t[r],n&=~s;return i}function D0(t,n){switch(t){case 1:case 2:case 4:return n+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return n+5e3;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return-1;case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}
vendor: 4,496 bytes, line 38
38function z0(t,n){for(var r=t.suspendedLanes,i=t.pingedLanes,s=t.expirationTimes,a=t.pendingLanes;0<a;){var o=31-an(a),c=1<<o,l=s[o];l===-1?(!(c&r)||c&i)&&(s[o]=D0(c,n)):l<=n&&(t.expiredLanes|=c),a&=~c}}function Cc(t){return t=t.pendingLanes&-1073741825,t!==0?t:t&1073741824?1073741824:0}function wg(){var t=ja;return ja<<=1,!(ja&4194240)&&(ja=64),t}function Nl(t){for(var n=[],r=0;31>r;r++)n.push(t);return n}function sa(t,n,r){t.pendingLanes|=n,n!==536870912&&(t.suspendedLanes=0,t.pingedLanes=0),t=t.eventTimes,n=31-an(n),t[n]=r}function B0(t,n){var r=t.pendingLanes&~n;t.pendingLanes=n,t.suspendedLanes=0,t.pingedLanes=0,t.expiredLanes&=n,t.mutableReadLanes&=n,t.entangledLanes&=n,n=t.entanglements;var i=t.eventTimes;for(t=t.expirationTimes;0<r;){var s=31-an(r),a=1<<s;n[s]=0,i[s]=-1,t[s]=-1,r&=~a}}function Rd(t,n){var r=t.entangledLanes|=n;for(t=t.entanglements;r;){var i=31-an(r),s=1<<i;s&n|t[i]&n&&(t[i]|=n),r&=~s}}var Ce=0;function kg(t){return t&=-t,1<t?4<t?t&268435455?16:536870912:4:1}var Ag,Pd,Sg,Eg,Ng,_c=!1,ka=[],rr=null,ir=null,sr=null,Fs=new Map,Os=new Map,Jn=[],U0="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function gu(t,n){switch(t){case"focusin":case"focusout":rr=null;break;case"dragenter":case"dragleave":ir=null;break;case"mouseover":case"mouseout":sr=null;break;case"pointerover":case"pointerout":Fs.delete(n.pointerId);break;case"gotpointercapture":case"lostpointercapture":Os.delete(n.pointerId)}}function Qi(t,n,r,i,s,a){return t===null||t.nativeEvent!==a?(t={blockedOn:n,domEventName:r,eventSystemFlags:i,nativeEvent:a,targetContainers:[s]},n!==null&&(n=oa(n),n!==null&&Pd(n)),t):(t.eventSystemFlags|=i,n=t.targetContainers,s!==null&&n.indexOf(s)===-1&&n.push(s),t)}function V0(t,n,r,i,s){switch(n){case"focusin":return rr=Qi(rr,t,n,r,i,s),!0;case"dragenter":return ir=Qi(ir,t,n,r,i,s),!0;case"mouseover":return sr=Qi(sr,t,n,r,i,s),!0;case"pointerover":var a=s.pointerId;return Fs.set(a,Qi(Fs.get(a)||null,t,n,r,i,s)),!0;case"gotpointercapture":return a=s.pointerId,Os.set(a,Qi(Os.get(a)||null,t,n,r,i,s)),!0}return!1}function Cg(t){var n=Ar(t.target);if(n!==null){var r=Yr(n);if(r!==null){if(n=r.tag,n===13){if(n=xg(r),n!==null){t.blockedOn=n,Ng(t.priority,function(){Sg(r)});return}}else if(n===3&&r.stateNode.current.memoizedState.isDehydrated){t.blockedOn=r.tag===3?r.stateNode.containerInfo:null;return}}}t.blockedOn=null}function $a(t){if(t.blockedOn!==null)return!1;for(var n=t.targetContainers;0<n.length;){var r=Tc(t.domEventName,t.eventSystemFlags,n[0],t.nativeEvent);if(r===null){r=t.nativeEvent;var i=new r.constructor(r.type,r);Ac=i,r.target.dispatchEvent(i),Ac=null}else return n=oa(r),n!==null&&Pd(n),t.blockedOn=r,!1;n.shift()}return!0}function fu(t,n,r){$a(t)&&r.delete(n)}function H0(){_c=!1,rr!==null&&$a(rr)&&(rr=null),ir!==null&&$a(ir)&&(ir=null),sr!==null&&$a(sr)&&(sr=null),Fs.forEach(fu),Os.forEach(fu)}function Zi(t,n){t.blockedOn===n&&(t.blockedOn=null,_c||(_c=!0,Mt.unstable_scheduleCallback(Mt.unstable_NormalPriority,H0)))}function Ms(t){function n(s){return Zi(s,t)}if(0<ka.length){Zi(ka[0],t);for(var r=1;r<ka.length;r++){var i=ka[r];i.blockedOn===t&&(i.blockedOn=null)}}for(rr!==null&&Zi(rr,t),ir!==null&&Zi(ir,t),sr!==null&&Zi(sr,t),Fs.forEach(n),Os.forEach(n),r=0;r<Jn.length;r++)i=Jn[r],i.blockedOn===t&&(i.blockedOn=null);for(;0<Jn.length&&(r=Jn[0],r.blockedOn===null);)Cg(r),r.blockedOn===null&&Jn.shift()}var bi=Un.ReactCurrentBatchConfig,xo=!0;function Y0(t,n,r,i){var s=Ce,a=bi.transition;bi.transition=null;try{Ce=1,Id(t,n,r,i)}finally{Ce=s,bi.transition=a}}function G0(t,n,r,i){var s=Ce,a=bi.transition;bi.transition=null;try{Ce=4,Id(t,n,r,i)}finally{Ce=s,bi.transition=a}}function Id(t,n,r,i){if(xo){var s=Tc(t,n,r,i);if(s===null)Il(t,n,i,Lo,r),gu(t,i);else if(V0(s,t,n,r,i))i.stopPropagation();else if(gu(t,i),n&4&&-1<U0.indexOf(t)){for(;s!==null;){var a=oa(s);if(a!==null&&Ag(a),a=Tc(t,n,r,i),a===null&&Il(t,n,i,Lo,r),a===s)break;s=a}s!==null&&i.stopPropagation()}else Il(t,n,i,null,r)}}var Lo=null;function Tc(t,n,r,i){if(Lo=null,t=Od(i),t=Ar(t),t!==null)if(n=Yr(t),n===null)t=null;else if(r=n.tag,r===13){if(t=xg(n),t!==null)return t;t=null}else if(r===3){if(n.stateNode.current.memoizedState.isDehydrated)return n.tag===3?n.stateNode.containerInfo:null;t=null}else n!==t&&(t=null);return Lo=t,null}
vendor: 10,401 bytes, line 38
38function _g(t){switch(t){case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 1;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"toggle":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 4;case"message":switch(F0()){case Md:return 1;case yg:return 4;case go:case O0:return 16;case jg:return 536870912;default:return 16}default:return 16}}var Xn=null,Dd=null,Xa=null;function Tg(){if(Xa)return Xa;var t,n=Dd,r=n.length,i,s="value"in Xn?Xn.value:Xn.textContent,a=s.length;for(t=0;t<r&&n[t]===s[t];t++);var o=r-t;for(i=1;i<=o&&n[r-i]===s[a-i];i++);return Xa=s.slice(t,1<i?1-i:void 0)}function eo(t){var n=t.keyCode;return"charCode"in t?(t=t.charCode,t===0&&n===13&&(t=13)):t=n,t===10&&(t=13),32<=t||t===13?t:0}function Aa(){return!0}function xu(){return!1}function It(t){function n(r,i,s,a,o){this._reactName=r,this._targetInst=s,this.type=i,this.nativeEvent=a,this.target=o,this.currentTarget=null;for(var c in t)t.hasOwnProperty(c)&&(r=t[c],this[c]=r?r(a):a[c]);return this.isDefaultPrevented=(a.defaultPrevented!=null?a.defaultPrevented:a.returnValue===!1)?Aa:xu,this.isPropagationStopped=xu,this}return Be(n.prototype,{preventDefault:function(){this.defaultPrevented=!0;var r=this.nativeEvent;r&&(r.preventDefault?r.preventDefault():typeof r.returnValue!="unknown"&&(r.returnValue=!1),this.isDefaultPrevented=Aa)},stopPropagation:function(){var r=this.nativeEvent;r&&(r.stopPropagation?r.stopPropagation():typeof r.cancelBubble!="unknown"&&(r.cancelBubble=!0),this.isPropagationStopped=Aa)},persist:function(){},isPersistent:Aa}),n}var Oi={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(t){return t.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},zd=It(Oi),aa=Be({},Oi,{view:0,detail:0}),W0=It(aa),Cl,_l,Ki,Go=Be({},aa,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Bd,button:0,buttons:0,relatedTarget:function(t){return t.relatedTarget===void 0?t.fromElement===t.srcElement?t.toElement:t.fromElement:t.relatedTarget},movementX:function(t){return"movementX"in t?t.movementX:(t!==Ki&&(Ki&&t.type==="mousemove"?(Cl=t.screenX-Ki.screenX,_l=t.screenY-Ki.screenY):_l=Cl=0,Ki=t),Cl)},movementY:function(t){return"movementY"in t?t.movementY:_l}}),Lu=It(Go),Q0=Be({},Go,{dataTransfer:0}),Z0=It(Q0),K0=Be({},aa,{relatedTarget:0}),Tl=It(K0),J0=Be({},Oi,{animationName:0,elapsedTime:0,pseudoElement:0}),$0=It(J0),X0=Be({},Oi,{clipboardData:function(t){return"clipboardData"in t?t.clipboardData:window.clipboardData}}),eL=It(X0),tL=Be({},Oi,{data:0}),vu=It(tL),nL={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},rL={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},iL={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function sL(t){var n=this.nativeEvent;return n.getModifierState?n.getModifierState(t):(t=iL[t])?!!n[t]:!1}function Bd(){return sL}var aL=Be({},aa,{key:function(t){if(t.key){var n=nL[t.key]||t.key;if(n!=="Unidentified")return n}return t.type==="keypress"?(t=eo(t),t===13?"Enter":String.fromCharCode(t)):t.type==="keydown"||t.type==="keyup"?rL[t.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Bd,charCode:function(t){return t.type==="keypress"?eo(t):0},keyCode:function(t){return t.type==="keydown"||t.type==="keyup"?t.keyCode:0},which:function(t){return t.type==="keypress"?eo(t):t.type==="keydown"||t.type==="keyup"?t.keyCode:0}}),oL=It(aL),lL=Be({},Go,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),bu=It(lL),cL=Be({},aa,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Bd}),dL=It(cL),pL=Be({},Oi,{propertyName:0,elapsedTime:0,pseudoElement:0}),uL=It(pL),hL=Be({},Go,{deltaX:function(t){return"deltaX"in t?t.deltaX:"wheelDeltaX"in t?-t.wheelDeltaX:0},deltaY:function(t){return"deltaY"in t?t.deltaY:"wheelDeltaY"in t?-t.wheelDeltaY:"wheelDelta"in t?-t.wheelDelta:0},deltaZ:0,deltaMode:0}),mL=It(hL),gL=[9,13,27,32],Ud=On&&"CompositionEvent"in window,js=null;On&&"documentMode"in document&&(js=document.documentMode);var fL=On&&"TextEvent"in window&&!js,qg=On&&(!Ud||js&&8<js&&11>=js),yu=" ",ju=!1;function Fg(t,n){switch(t){case"keyup":return gL.indexOf(n.keyCode)!==-1;case"keydown":return n.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Og(t){return t=t.detail,typeof t=="object"&&"data"in t?t.data:null}var oi=!1;function xL(t,n){switch(t){case"compositionend":return Og(n);case"keypress":return n.which!==32?null:(ju=!0,yu);case"textInput":return t=n.data,t===yu&&ju?null:t;default:return null}}function LL(t,n){if(oi)return t==="compositionend"||!Ud&&Fg(t,n)?(t=Tg(),Xa=Dd=Xn=null,oi=!1,t):null;switch(t){case"paste":return null;case"keypress":if(!(n.ctrlKey||n.altKey||n.metaKey)||n.ctrlKey&&n.altKey){if(n.char&&1<n.char.length)return n.char;if(n.which)return String.fromCharCode(n.which)}return null;case"compositionend":return qg&&n.locale!=="ko"?null:n.data;default:return null}}var vL={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function wu(t){var n=t&&t.nodeName&&t.nodeName.toLowerCase();return n==="input"?!!vL[t.type]:n==="textarea"}function Mg(t,n,r,i){ug(i),n=vo(n,"onChange"),0<n.length&&(r=new zd("onChange","change",null,r,i),t.push({event:r,listeners:n}))}var ws=null,Rs=null;function bL(t){Gg(t,0)}function Wo(t){var n=di(t);if(sg(n))return t}function yL(t,n){if(t==="change")return n}var Rg=!1;if(On){var ql;if(On){var Fl="oninput"in document;if(!Fl){var ku=document.createElement("div");ku.setAttribute("oninput","return;"),Fl=typeof ku.oninput=="function"}ql=Fl}else ql=!1;Rg=ql&&(!document.documentMode||9<document.documentMode)}function Au(){ws&&(ws.detachEvent("onpropertychange",Pg),Rs=ws=null)}function Pg(t){if(t.propertyName==="value"&&Wo(Rs)){var n=[];Mg(n,Rs,t,Od(t)),fg(bL,n)}}function jL(t,n,r){t==="focusin"?(Au(),ws=n,Rs=r,ws.attachEvent("onpropertychange",Pg)):t==="focusout"&&Au()}function wL(t){if(t==="selectionchange"||t==="keyup"||t==="keydown")return Wo(Rs)}function kL(t,n){if(t==="click")return Wo(n)}function AL(t,n){if(t==="input"||t==="change")return Wo(n)}function SL(t,n){return t===n&&(t!==0||1/t===1/n)||t!==t&&n!==n}var ln=typeof Object.is=="function"?Object.is:SL;function Ps(t,n){if(ln(t,n))return!0;if(typeof t!="object"||t===null||typeof n!="object"||n===null)return!1;var r=Object.keys(t),i=Object.keys(n);if(r.length!==i.length)return!1;for(i=0;i<r.length;i++){var s=r[i];if(!hc.call(n,s)||!ln(t[s],n[s]))return!1}return!0}function Su(t){for(;t&&t.firstChild;)t=t.firstChild;return t}function Eu(t,n){var r=Su(t);t=0;for(var i;r;){if(r.nodeType===3){if(i=t+r.textContent.length,t<=n&&i>=n)return{node:r,offset:n-t};t=i}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=Su(r)}}function Ig(t,n){return t&&n?t===n?!0:t&&t.nodeType===3?!1:n&&n.nodeType===3?Ig(t,n.parentNode):"contains"in t?t.contains(n):t.compareDocumentPosition?!!(t.compareDocumentPosition(n)&16):!1:!1}function Dg(){for(var t=window,n=uo();n instanceof t.HTMLIFrameElement;){try{var r=typeof n.contentWindow.location.href=="string"}catch{r=!1}if(r)t=n.contentWindow;else break;n=uo(t.document)}return n}function Vd(t){var n=t&&t.nodeName&&t.nodeName.toLowerCase();return n&&(n==="input"&&(t.type==="text"||t.type==="search"||t.type==="tel"||t.type==="url"||t.type==="password")||n==="textarea"||t.contentEditable==="true")}function EL(t){var n=Dg(),r=t.focusedElem,i=t.selectionRange;if(n!==r&&r&&r.ownerDocument&&Ig(r.ownerDocument.documentElement,r)){if(i!==null&&Vd(r)){if(n=i.start,t=i.end,t===void 0&&(t=n),"selectionStart"in r)r.selectionStart=n,r.selectionEnd=Math.min(t,r.value.length);else if(t=(n=r.ownerDocument||document)&&n.defaultView||window,t.getSelection){t=t.getSelection();var s=r.textContent.length,a=Math.min(i.start,s);i=i.end===void 0?a:Math.min(i.end,s),!t.extend&&a>i&&(s=i,i=a,a=s),s=Eu(r,a);var o=Eu(r,i);s&&o&&(t.rangeCount!==1||t.anchorNode!==s.node||t.anchorOffset!==s.offset||t.focusNode!==o.node||t.focusOffset!==o.offset)&&(n=n.createRange(),n.setStart(s.node,s.offset),t.removeAllRanges(),a>i?(t.addRange(n),t.extend(o.node,o.offset)):(n.setEnd(o.node,o.offset),t.addRange(n)))}}for(n=[],t=r;t=t.parentNode;)t.nodeType===1&&n.push({element:t,left:t.scrollLeft,top:t.scrollTop});for(typeof r.focus=="function"&&r.focus(),r=0;r<n.length;r++)t=n[r],t.element.scrollLeft=t.left,t.element.scrollTop=t.top}}var NL=On&&"documentMode"in document&&11>=document.documentMode,li=null,qc=null,ks=null,Fc=!1;function Nu(t,n,r){var i=r.window===r?r.document:r.nodeType===9?r:r.ownerDocument;Fc||li==null||li!==uo(i)||(i=li,"selectionStart"in i&&Vd(i)?i={start:i.selectionStart,end:i.selectionEnd}:(i=(i.ownerDocument&&i.ownerDocument.defaultView||window).getSelection(),i={anchorNode:i.anchorNode,anchorOffset:i.anchorOffset,focu
vendor: 4,501 bytes, line 38
38sNode:i.focusNode,focusOffset:i.focusOffset}),ks&&Ps(ks,i)||(ks=i,i=vo(qc,"onSelect"),0<i.length&&(n=new zd("onSelect","select",null,n,r),t.push({event:n,listeners:i}),n.target=li)))}function Sa(t,n){var r={};return r[t.toLowerCase()]=n.toLowerCase(),r["Webkit"+t]="webkit"+n,r["Moz"+t]="moz"+n,r}var ci={animationend:Sa("Animation","AnimationEnd"),animationiteration:Sa("Animation","AnimationIteration"),animationstart:Sa("Animation","AnimationStart"),transitionend:Sa("Transition","TransitionEnd")},Ol={},zg={};On&&(zg=document.createElement("div").style,"AnimationEvent"in window||(delete ci.animationend.animation,delete ci.animationiteration.animation,delete ci.animationstart.animation),"TransitionEvent"in window||delete ci.transitionend.transition);function Qo(t){if(Ol[t])return Ol[t];if(!ci[t])return t;var n=ci[t],r;for(r in n)if(n.hasOwnProperty(r)&&r in zg)return Ol[t]=n[r];return t}var Bg=Qo("animationend"),Ug=Qo("animationiteration"),Vg=Qo("animationstart"),Hg=Qo("transitionend"),Yg=new Map,Cu="abort auxClick cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");function fr(t,n){Yg.set(t,n),Hr(n,[t])}for(var Ml=0;Ml<Cu.length;Ml++){var Rl=Cu[Ml],CL=Rl.toLowerCase(),_L=Rl[0].toUpperCase()+Rl.slice(1);fr(CL,"on"+_L)}fr(Bg,"onAnimationEnd");fr(Ug,"onAnimationIteration");fr(Vg,"onAnimationStart");fr("dblclick","onDoubleClick");fr("focusin","onFocus");fr("focusout","onBlur");fr(Hg,"onTransitionEnd");ki("onMouseEnter",["mouseout","mouseover"]);ki("onMouseLeave",["mouseout","mouseover"]);ki("onPointerEnter",["pointerout","pointerover"]);ki("onPointerLeave",["pointerout","pointerover"]);Hr("onChange","change click focusin focusout input keydown keyup selectionchange".split(" "));Hr("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" "));Hr("onBeforeInput",["compositionend","keypress","textInput","paste"]);Hr("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" "));Hr("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" "));Hr("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var gs="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),TL=new Set("cancel close invalid load scroll toggle".split(" ").concat(gs));function _u(t,n,r){var i=t.type||"unknown-event";t.currentTarget=r,C0(i,n,void 0,t),t.currentTarget=null}function Gg(t,n){n=(n&4)!==0;for(var r=0;r<t.length;r++){var i=t[r],s=i.event;i=i.listeners;e:{var a=void 0;if(n)for(var o=i.length-1;0<=o;o--){var c=i[o],l=c.instance,d=c.currentTarget;if(c=c.listener,l!==a&&s.isPropagationStopped())break e;_u(s,c,d),a=l}else for(o=0;o<i.length;o++){if(c=i[o],l=c.instance,d=c.currentTarget,c=c.listener,l!==a&&s.isPropagationStopped())break e;_u(s,c,d),a=l}}}if(mo)throw t=Nc,mo=!1,Nc=null,t}function Oe(t,n){var r=n[Ic];r===void 0&&(r=n[Ic]=new Set);var i=t+"__bubble";r.has(i)||(Wg(n,t,2,!1),r.add(i))}function Pl(t,n,r){var i=0;n&&(i|=4),Wg(r,t,i,n)}var Ea="_reactListening"+Math.random().toString(36).slice(2);function Is(t){if(!t[Ea]){t[Ea]=!0,eg.forEach(function(r){r!=="selectionchange"&&(TL.has(r)||Pl(r,!1,t),Pl(r,!0,t))});var n=t.nodeType===9?t:t.ownerDocument;n===null||n[Ea]||(n[Ea]=!0,Pl("selectionchange",!1,n))}}function Wg(t,n,r,i){switch(_g(n)){case 1:var s=Y0;break;case 4:s=G0;break;default:s=Id}r=s.bind(null,n,r,t),s=void 0,!Ec||n!=="touchstart"&&n!=="touchmove"&&n!=="wheel"||(s=!0),i?s!==void 0?t.addEventListener(n,r,{capture:!0,passive:s}):t.addEventListener(n,r,!0):s!==void 0?t.addEventListener(n,r,{passive:s}):t.addEventListener(n,r,!1)}function Il(t,n,r,i,s){var a=i;if(!(n&1)&&!(n&2)&&i!==null)e:for(;;){if(i===null)return;var o=i.tag;if(o===3||o===4){var c=i.stateNode.containerInfo;
vendor: 5,316 bytes, lines 38-39
38if(c===s||c.nodeType===8&&c.parentNode===s)break;if(o===4)for(o=i.return;o!==null;){var l=o.tag;if((l===3||l===4)&&(l=o.stateNode.containerInfo,l===s||l.nodeType===8&&l.parentNode===s))return;o=o.return}for(;c!==null;){if(o=Ar(c),o===null)return;if(l=o.tag,l===5||l===6){i=a=o;continue e}c=c.parentNode}}i=i.return}fg(function(){var d=a,p=Od(r),u=[];e:{var g=Yg.get(t);if(g!==void 0){var f=zd,L=t;switch(t){case"keypress":if(eo(r)===0)break e;case"keydown":case"keyup":f=oL;break;case"focusin":L="focus",f=Tl;break;case"focusout":L="blur",f=Tl;break;case"beforeblur":case"afterblur":f=Tl;break;case"click":if(r.button===2)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":f=Lu;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":f=Z0;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":f=dL;break;case Bg:case Ug:case Vg:f=$0;break;case Hg:f=uL;break;case"scroll":f=W0;break;case"wheel":f=mL;break;case"copy":case"cut":case"paste":f=eL;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":f=bu}var v=(n&4)!==0,y=!v&&t==="scroll",h=v?g!==null?g+"Capture":null:g;v=[];for(var b=d,x;b!==null;){x=b;var A=x.stateNode;if(x.tag===5&&A!==null&&(x=A,h!==null&&(A=qs(b,h),A!=null&&v.push(Ds(b,A,x)))),y)break;b=b.return}0<v.length&&(g=new f(g,L,null,r,p),u.push({event:g,listeners:v}))}}if(!(n&7)){e:{if(g=t==="mouseover"||t==="pointerover",f=t==="mouseout"||t==="pointerout",g&&r!==Ac&&(L=r.relatedTarget||r.fromElement)&&(Ar(L)||L[Mn]))break e;if((f||g)&&(g=p.window===p?p:(g=p.ownerDocument)?g.defaultView||g.parentWindow:window,f?(L=r.relatedTarget||r.toElement,f=d,L=L?Ar(L):null,L!==null&&(y=Yr(L),L!==y||L.tag!==5&&L.tag!==6)&&(L=null)):(f=null,L=d),f!==L)){if(v=Lu,A="onMouseLeave",h="onMouseEnter",b="mouse",(t==="pointerout"||t==="pointerover")&&(v=bu,A="onPointerLeave",h="onPointerEnter",b="pointer"),y=f==null?g:di(f),x=L==null?g:di(L),g=new v(A,b+"leave",f,r,p),g.target=y,g.relatedTarget=x,A=null,Ar(p)===d&&(v=new v(h,b+"enter",L,r,p),v.target=x,v.relatedTarget=y,A=v),y=A,f&&L)t:{for(v=f,h=L,b=0,x=v;x;x=Xr(x))b++;for(x=0,A=h;A;A=Xr(A))x++;for(;0<b-x;)v=Xr(v),b--;for(;0<x-b;)h=Xr(h),x--;for(;b--;){if(v===h||h!==null&&v===h.alternate)break t;v=Xr(v),h=Xr(h)}v=null}else v=null;f!==null&&Tu(u,g,f,v,!1),L!==null&&y!==null&&Tu(u,y,L,v,!0)}}e:{if(g=d?di(d):window,f=g.nodeName&&g.nodeName.toLowerCase(),f==="select"||f==="input"&&g.type==="file")var w=yL;else if(wu(g))if(Rg)w=AL;else{w=wL;var S=jL}else(f=g.nodeName)&&f.toLowerCase()==="input"&&(g.type==="checkbox"||g.type==="radio")&&(w=kL);if(w&&(w=w(t,d))){Mg(u,w,r,p);break e}S&&S(t,g,d),t==="focusout"&&(S=g._wrapperState)&&S.controlled&&g.type==="number"&&bc(g,"number",g.value)}switch(S=d?di(d):window,t){case"focusin":(wu(S)||S.contentEditable==="true")&&(li=S,qc=d,ks=null);break;case"focusout":ks=qc=li=null;break;case"mousedown":Fc=!0;break;case"contextmenu":case"mouseup":case"dragend":Fc=!1,Nu(u,r,p);break;case"selectionchange":if(NL)break;case"keydown":case"keyup":Nu(u,r,p)}var E;if(Ud)e:{switch(t){case"compositionstart":var j="onCompositionStart";break e;case"compositionend":j="onCompositionEnd";break e;case"compositionupdate":j="onCompositionUpdate";break e}j=void 0}else oi?Fg(t,r)&&(j="onCompositionEnd"):t==="keydown"&&r.keyCode===229&&(j="onCompositionStart");j&&(qg&&r.locale!=="ko"&&(oi||j!=="onCompositionStart"?j==="onCompositionEnd"&&oi&&(E=Tg()):(Xn=p,Dd="value"in Xn?Xn.value:Xn.textContent,oi=!0)),S=vo(d,j),0<S.length&&(j=new vu(j,t,null,r,p),u.push({event:j,listeners:S}),E?j.data=E:(E=Og(r),E!==null&&(j.data=E)))),(E=fL?xL(t,r):LL(t,r))&&(d=vo(d,"onBeforeInput"),0<d.length&&(p=new vu("onBeforeInput","beforeinput",null,r,p),u.push({event:p,listeners:d}),p.data=E))}Gg(u,n)})}function Ds(t,n,r){return{instance:t,listener:n,currentTarget:r}}function vo(t,n){for(var r=n+"Capture",i=[];t!==null;){var s=t,a=s.stateNode;s.tag===5&&a!==null&&(s=a,a=qs(t,r),a!=null&&i.unshift(Ds(t,a,s)),a=qs(t,n),a!=null&&i.push(Ds(t,a,s))),t=t.return}return i}function Xr(t){if(t===null)return null;do t=t.return;while(t&&t.tag!==5);return t||null}function Tu(t,n,r,i,s){for(var a=n._reactName,o=[];r!==null&&r!==i;){var c=r,l=c.alternate,d=c.stateNode;if(l!==null&&l===i)break;c.tag===5&&d!==null&&(c=d,s?(l=qs(r,a),l!=null&&o.unshift(Ds(r,l,c))):s||(l=qs(r,a),l!=null&&o.push(Ds(r,l,c)))),r=r.return}o.length!==0&&t.push({event:n,listeners:o})}var qL=/\r\n?/g,FL=/\u0000|\uFFFD/g;function qu(t){return(typeof t=="string"?t:""+t).replace(qL,` 39`).replace(FL,"")}function Na(t,n,r){if(n=qu(n),qu(t)!==n&&r)throw Error(V(425))}function bo(){}var Oc=null,Mc=null;function Rc(t,n){return t==="textarea"||t==="noscript"||typeof n.children=="string"||typeof n.children=="number"||typeof n.dangerouslySetInnerHTML=="object"&&n.dangerouslySetInnerHTML!==null&&n.dangerouslySetInnerHTML.__html!=null}var Pc=typeof setTimeout=="function"?setTimeout:void 0,OL=typeof clearTimeout=="function"?clearTimeout:void 0,Fu=typeof Promise=="function"?Promise:void 0,ML=typeof queueMicrotask=="function"?queueMicrotask:typeof Fu<"u"?function(t){return Fu.resolve(null).then(t).cat
vendor: 4,824 bytes, line 39
39ch(RL)}:Pc;function RL(t){setTimeout(function(){throw t})}function Dl(t,n){var r=n,i=0;do{var s=r.nextSibling;if(t.removeChild(r),s&&s.nodeType===8)if(r=s.data,r==="/$"){if(i===0){t.removeChild(s),Ms(n);return}i--}else r!=="$"&&r!=="$?"&&r!=="$!"||i++;r=s}while(r);Ms(n)}function ar(t){for(;t!=null;t=t.nextSibling){var n=t.nodeType;if(n===1||n===3)break;if(n===8){if(n=t.data,n==="$"||n==="$!"||n==="$?")break;if(n==="/$")return null}}return t}function Ou(t){t=t.previousSibling;for(var n=0;t;){if(t.nodeType===8){var r=t.data;if(r==="$"||r==="$!"||r==="$?"){if(n===0)return t;n--}else r==="/$"&&n++}t=t.previousSibling}return null}var Mi=Math.random().toString(36).slice(2),hn="__reactFiber$"+Mi,zs="__reactProps$"+Mi,Mn="__reactContainer$"+Mi,Ic="__reactEvents$"+Mi,PL="__reactListeners$"+Mi,IL="__reactHandles$"+Mi;function Ar(t){var n=t[hn];if(n)return n;for(var r=t.parentNode;r;){if(n=r[Mn]||r[hn]){if(r=n.alternate,n.child!==null||r!==null&&r.child!==null)for(t=Ou(t);t!==null;){if(r=t[hn])return r;t=Ou(t)}return n}t=r,r=t.parentNode}return null}function oa(t){return t=t[hn]||t[Mn],!t||t.tag!==5&&t.tag!==6&&t.tag!==13&&t.tag!==3?null:t}function di(t){if(t.tag===5||t.tag===6)return t.stateNode;throw Error(V(33))}function Zo(t){return t[zs]||null}var Dc=[],pi=-1;function xr(t){return{current:t}}function Me(t){0>pi||(t.current=Dc[pi],Dc[pi]=null,pi--)}function qe(t,n){pi++,Dc[pi]=t.current,t.current=n}var mr={},ut=xr(mr),At=xr(!1),Fr=mr;function Ai(t,n){var r=t.type.contextTypes;if(!r)return mr;var i=t.stateNode;if(i&&i.__reactInternalMemoizedUnmaskedChildContext===n)return i.__reactInternalMemoizedMaskedChildContext;var s={},a;for(a in r)s[a]=n[a];return i&&(t=t.stateNode,t.__reactInternalMemoizedUnmaskedChildContext=n,t.__reactInternalMemoizedMaskedChildContext=s),s}function St(t){return t=t.childContextTypes,t!=null}function yo(){Me(At),Me(ut)}function Mu(t,n,r){if(ut.current!==mr)throw Error(V(168));qe(ut,n),qe(At,r)}function Qg(t,n,r){var i=t.stateNode;if(n=n.childContextTypes,typeof i.getChildContext!="function")return r;i=i.getChildContext();for(var s in i)if(!(s in n))throw Error(V(108,j0(t)||"Unknown",s));return Be({},r,i)}function jo(t){return t=(t=t.stateNode)&&t.__reactInternalMemoizedMergedChildContext||mr,Fr=ut.current,qe(ut,t),qe(At,At.current),!0}function Ru(t,n,r){var i=t.stateNode;if(!i)throw Error(V(169));r?(t=Qg(t,n,Fr),i.__reactInternalMemoizedMergedChildContext=t,Me(At),Me(ut),qe(ut,t)):Me(At),qe(At,r)}var En=null,Ko=!1,zl=!1;function Zg(t){En===null?En=[t]:En.push(t)}function DL(t){Ko=!0,Zg(t)}function Lr(){if(!zl&&En!==null){zl=!0;var t=0,n=Ce;try{var r=En;for(Ce=1;t<r.length;t++){var i=r[t];do i=i(!0);while(i!==null)}En=null,Ko=!1}catch(s){throw En!==null&&(En=En.slice(t+1)),bg(Md,Lr),s}finally{Ce=n,zl=!1}}return null}var ui=[],hi=0,wo=null,ko=0,Bt=[],Ut=0,Or=null,Cn=1,_n="";function wr(t,n){ui[hi++]=ko,ui[hi++]=wo,wo=t,ko=n}function Kg(t,n,r){Bt[Ut++]=Cn,Bt[Ut++]=_n,Bt[Ut++]=Or,Or=t;var i=Cn;t=_n;var s=32-an(i)-1;i&=~(1<<s),r+=1;var a=32-an(n)+s;if(30<a){var o=s-s%5;a=(i&(1<<o)-1).toString(32),i>>=o,s-=o,Cn=1<<32-an(n)+s|r<<s|i,_n=a+t}else Cn=1<<a|r<<s|i,_n=t}function Hd(t){t.return!==null&&(wr(t,1),Kg(t,1,0))}function Yd(t){for(;t===wo;)wo=ui[--hi],ui[hi]=null,ko=ui[--hi],ui[hi]=null;for(;t===Or;)Or=Bt[--Ut],Bt[Ut]=null,_n=Bt[--Ut],Bt[Ut]=null,Cn=Bt[--Ut],Bt[Ut]=null}var Ot=null,Ft=null,Pe=!1,sn=null;function Jg(t,n){var r=Vt(5,null,null,0);r.elementType="DELETED",r.stateNode=n,r.return=t,n=t.deletions,n===null?(t.deletions=[r],t.flags|=16):n.push(r)}function Pu(t,n){switch(t.tag){case 5:var r=t.type;return n=n.nodeType!==1||r.toLowerCase()!==n.nodeName.toLowerCase()?null:n,n!==null?(t.stateNode=n,Ot=t,Ft=ar(n.firstChild),!0):!1;case 6:return n=t.pendingProps===""||n.nodeType!==3?null:n,n!==null?(t.stateNode=n,Ot=t,Ft=null,!0):!1;case 13:return n=n.nodeType!==8?null:n,n!==null?(r=Or!==null?{id:Cn,overflow:_n}:null,t.memoizedState={dehydrated:n,treeContext:r,retryLane:1073741824},r=Vt(18,null,null,0),r.stateNode=n,r.return=t,t.child=r,Ot=t,Ft=null,!0):!1;default:return!1}}function zc(t){return(t.mode&1)!==0&&(t.flags&128)===0}function Bc(t){if(Pe){var n=Ft;if(n){var r=n;if(!Pu(t,n)){if(zc(t))throw Error(V(418));n=ar(r.nextSibling);var i=Ot;n&&Pu(t,n)?Jg(i,r):(t.flags=t.flags&-4097|2,Pe=!1,Ot=t)}}else{if(zc(t))throw Error(V(418));t.flags=t.flags&-4097|2,Pe=!1,Ot=t}}}function Iu(t){for(t=t.return;t!==null&&t.tag!==5&&t.tag!==3&&t.tag!==13;)t=t.return;Ot=t}function Ca(t){if(t!==Ot)return!1;if(!Pe)return Iu(t),Pe=!0,!1;var n;if((n=t.tag!==3)&&!(n=t.tag!==5)&&(n=t.type,n=n!=="head"&&n!=="body"&&!Rc(t.type,t.memoizedProps)),n&&(n=Ft)){if(zc(t))throw $g(),Error(V(418));for(;n;)Jg(t,n),n=ar(n.nextSibling)}if(Iu(t),t.tag===13){if(t=t.memoizedState,t=t!==null?t.dehydrated:null,!t)throw Error(V(317));e:{for(t=t.nextSibling,n=0;t;
vendor: 25,596 bytes, lines 39-41
39){if(t.nodeType===8){var r=t.data;if(r==="/$"){if(n===0){Ft=ar(t.nextSibling);break e}n--}else r!=="$"&&r!=="$!"&&r!=="$?"||n++}t=t.nextSibling}Ft=null}}else Ft=Ot?ar(t.stateNode.nextSibling):null;return!0}function $g(){for(var t=Ft;t;)t=ar(t.nextSibling)}function Si(){Ft=Ot=null,Pe=!1}function Gd(t){sn===null?sn=[t]:sn.push(t)}var zL=Un.ReactCurrentBatchConfig;function Ji(t,n,r){if(t=r.ref,t!==null&&typeof t!="function"&&typeof t!="object"){if(r._owner){if(r=r._owner,r){if(r.tag!==1)throw Error(V(309));var i=r.stateNode}if(!i)throw Error(V(147,t));var s=i,a=""+t;return n!==null&&n.ref!==null&&typeof n.ref=="function"&&n.ref._stringRef===a?n.ref:(n=function(o){var c=s.refs;o===null?delete c[a]:c[a]=o},n._stringRef=a,n)}if(typeof t!="string")throw Error(V(284));if(!r._owner)throw Error(V(290,t))}return t}function _a(t,n){throw t=Object.prototype.toString.call(n),Error(V(31,t==="[object Object]"?"object with keys {"+Object.keys(n).join(", ")+"}":t))}function Du(t){var n=t._init;return n(t._payload)}function Xg(t){function n(h,b){if(t){var x=h.deletions;x===null?(h.deletions=[b],h.flags|=16):x.push(b)}}function r(h,b){if(!t)return null;for(;b!==null;)n(h,b),b=b.sibling;return null}function i(h,b){for(h=new Map;b!==null;)b.key!==null?h.set(b.key,b):h.set(b.index,b),b=b.sibling;return h}function s(h,b){return h=dr(h,b),h.index=0,h.sibling=null,h}function a(h,b,x){return h.index=x,t?(x=h.alternate,x!==null?(x=x.index,x<b?(h.flags|=2,b):x):(h.flags|=2,b)):(h.flags|=1048576,b)}function o(h){return t&&h.alternate===null&&(h.flags|=2),h}function c(h,b,x,A){return b===null||b.tag!==6?(b=Wl(x,h.mode,A),b.return=h,b):(b=s(b,x),b.return=h,b)}function l(h,b,x,A){var w=x.type;return w===ai?p(h,b,x.props.children,A,x.key):b!==null&&(b.elementType===w||typeof w=="object"&&w!==null&&w.$$typeof===Zn&&Du(w)===b.type)?(A=s(b,x.props),A.ref=Ji(h,b,x),A.return=h,A):(A=oo(x.type,x.key,x.props,null,h.mode,A),A.ref=Ji(h,b,x),A.return=h,A)}function d(h,b,x,A){return b===null||b.tag!==4||b.stateNode.containerInfo!==x.containerInfo||b.stateNode.implementation!==x.implementation?(b=Ql(x,h.mode,A),b.return=h,b):(b=s(b,x.children||[]),b.return=h,b)}function p(h,b,x,A,w){return b===null||b.tag!==7?(b=_r(x,h.mode,A,w),b.return=h,b):(b=s(b,x),b.return=h,b)}function u(h,b,x){if(typeof b=="string"&&b!==""||typeof b=="number")return b=Wl(""+b,h.mode,x),b.return=h,b;if(typeof b=="object"&&b!==null){switch(b.$$typeof){case va:return x=oo(b.type,b.key,b.props,null,h.mode,x),x.ref=Ji(h,null,b),x.return=h,x;case si:return b=Ql(b,h.mode,x),b.return=h,b;case Zn:var A=b._init;return u(h,A(b._payload),x)}if(hs(b)||Gi(b))return b=_r(b,h.mode,x,null),b.return=h,b;_a(h,b)}return null}function g(h,b,x,A){var w=b!==null?b.key:null;if(typeof x=="string"&&x!==""||typeof x=="number")return w!==null?null:c(h,b,""+x,A);if(typeof x=="object"&&x!==null){switch(x.$$typeof){case va:return x.key===w?l(h,b,x,A):null;case si:return x.key===w?d(h,b,x,A):null;case Zn:return w=x._init,g(h,b,w(x._payload),A)}if(hs(x)||Gi(x))return w!==null?null:p(h,b,x,A,null);_a(h,x)}return null}function f(h,b,x,A,w){if(typeof A=="string"&&A!==""||typeof A=="number")return h=h.get(x)||null,c(b,h,""+A,w);if(typeof A=="object"&&A!==null){switch(A.$$typeof){case va:return h=h.get(A.key===null?x:A.key)||null,l(b,h,A,w);case si:return h=h.get(A.key===null?x:A.key)||null,d(b,h,A,w);case Zn:var S=A._init;return f(h,b,x,S(A._payload),w)}if(hs(A)||Gi(A))return h=h.get(x)||null,p(b,h,A,w,null);_a(b,A)}return null}function L(h,b,x,A){for(var w=null,S=null,E=b,j=b=0,O=null;E!==null&&j<x.length;j++){E.index>j?(O=E,E=null):O=E.sibling;var k=g(h,E,x[j],A);if(k===null){E===null&&(E=O);break}t&&E&&k.alternate===null&&n(h,E),b=a(k,b,j),S===null?w=k:S.sibling=k,S=k,E=O}if(j===x.length)return r(h,E),Pe&&wr(h,j),w;if(E===null){for(;j<x.length;j++)E=u(h,x[j],A),E!==null&&(b=a(E,b,j),S===null?w=E:S.sibling=E,S=E);return Pe&&wr(h,j),w}for(E=i(h,E);j<x.length;j++)O=f(E,h,j,x[j],A),O!==null&&(t&&O.alternate!==null&&E.delete(O.key===null?j:O.key),b=a(O,b,j),S===null?w=O:S.sibling=O,S=O);return t&&E.forEach(function(_){return n(h,_)}),Pe&&wr(h,j),w}function v(h,b,x,A){var w=Gi(x);if(typeof w!="function")throw Error(V(150));if(x=w.call(x),x==null)throw Error(V(151));for(var S=w=null,E=b,j=b=0,O=null,k=x.next();E!==null&&!k.done;j++,k=x.next()){E.index>j?(O=E,E=null):O=E.sibling;var _=g(h,E,k.value,A);if(_===null){E===null&&(E=O);break}t&&E&&_.alternate===null&&n(h,E),b=a(_,b,j),S===null?w=_:S.sibling=_,S=_,E=O}if(k.done)return r(h,E),Pe&&wr(h,j),w;if(E===null){for(;!k.done;j++,k=x.next())k=u(h,k.value,A),k!==null&&(b=a(k,b,j),S===null?w=k:S.sibling=k,S=k);return Pe&&wr(h,j),w}for(E=i(h,E);!k.done;j++,k=x.next())k=f(E,h,j,k.value,A),k!==null&&(t&&k.alternate!==null&&E.delete(k.key===null?j:k.key),b=a(k,b,j),S===null?w=k:S.sibling=k,S=k);return t&&E.forEach(function(N){return n(h,N)}),Pe&&wr(h,j),w}function y(h,b,x,A){if(typeof x=="object"&&x!==null&&x.type===ai&&x.key===null&&(x=x.props.children),typeof x=="object"&&x!==null){switch(x.$$typeof){case va:e:{for(var w=x.key,S=b;S!==null;){if(S.key===w){if(w=x.type,w===ai){if(S.tag===7){r(h,S.sibling),b=s(S,x.props.children),b.return=h,h=b;break e}}else if(S.elementType===w||typeof w=="object"&&w!==null&&w.$$typeof===Zn&&Du(w)===S.type){r(h,S.sibling),b=s(S,x.props),b.ref=Ji(h,S,x),b.return=h,h=b;break e}r(h,S);break}else n(h,S);S=S.sibling}x.type===ai?(b=_r(x.props.children,h.mode,A,x.key),b.return=h,h=b):(A=oo(x.type,x.key,x.props,null,h.mode,A),A.ref=Ji(h,b,x),A.return=h,h=A)}return o(h);case si:e:{for(S=x.key;b!==null;){if(b.key===S)if(b.tag===4&&b.stateNode.containerInfo===x.containerInfo&&b.stateNode.implementation===x.implementation){r(h,b.sibling),b=s(b,x.children||[]),b.return=h,h=b;break e}else{r(h,b);break}else n(h,b);b=b.sibling}b=Ql(x,h.mode,A),b.return=h,h=b}return o(h);case Zn:return S=x._init,y(h,b,S(x._payload),A)}if(hs(x))return L(h,b,x,A);if(Gi(x))return v(h,b,x,A);_a(h,x)}return typeof x=="string"&&x!==""||typeof x=="number"?(x=""+x,b!==null&&b.tag===6?(r(h,b.sibling),b=s(b,x),b.return=h,h=b):(r(h,b),b=Wl(x,h.mode,A),b.return=h,h=b),o(h)):r(h,b)}return y}var Ei=Xg(!0),ef=Xg(!1),Ao=xr(null),So=null,mi=null,Wd=null;function Qd(){Wd=mi=So=null}function Zd(t){var n=Ao.current;Me(Ao),t._currentValue=n}function Uc(t,n,r){for(;t!==null;){var i=t.alternate;if((t.childLanes&n)!==n?(t.childLanes|=n,i!==null&&(i.childLanes|=n)):i!==null&&(i.childLanes&n)!==n&&(i.childLanes|=n),t===r)break;t=t.return}}function yi(t,n){So=t,Wd=mi=null,t=t.dependencies,t!==null&&t.firstContext!==null&&(t.lanes&n&&(kt=!0),t.firstContext=null)}function Wt(t){var n=t._currentValue;if(Wd!==t)if(t={context:t,memoizedValue:n,next:null},mi===null){if(So===null)throw Error(V(308));mi=t,So.dependencies={lanes:0,firstContext:t}}else mi=mi.next=t;return n}var Sr=null;function Kd(t){Sr===null?Sr=[t]:Sr.push(t)}function tf(t,n,r,i){var s=n.interleaved;return s===null?(r.next=r,Kd(n)):(r.next=s.next,s.next=r),n.interleaved=r,Rn(t,i)}function Rn(t,n){t.lanes|=n;var r=t.alternate;for(r!==null&&(r.lanes|=n),r=t,t=t.return;t!==null;)t.childLanes|=n,r=t.alternate,r!==null&&(r.childLanes|=n),r=t,t=t.return;return r.tag===3?r.stateNode:null}var Kn=!1;function Jd(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function nf(t,n){t=t.updateQueue,n.updateQueue===t&&(n.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,effects:t.effects})}function qn(t,n){return{eventTime:t,lane:n,tag:0,payload:null,callback:null,next:null}}function or(t,n,r){var i=t.updateQueue;if(i===null)return null;if(i=i.shared,Ee&2){var s=i.pending;return s===null?n.next=n:(n.next=s.next,s.next=n),i.pending=n,Rn(t,r)}return s=i.interleaved,s===null?(n.next=n,Kd(i)):(n.next=s.next,s.next=n),i.interleaved=n,Rn(t,r)}function to(t,n,r){if(n=n.updateQueue,n!==null&&(n=n.shared,(r&4194240)!==0)){var i=n.lanes;i&=t.pendingLanes,r|=i,n.lanes=r,Rd(t,r)}}function zu(t,n){var r=t.updateQueue,i=t.alternate;if(i!==null&&(i=i.updateQueue,r===i)){var s=null,a=null;if(r=r.firstBaseUpdate,r!==null){do{var o={eventTime:r.eventTime,lane:r.lane,tag:r.tag,payload:r.payload,callback:r.callback,next:null};a===null?s=a=o:a=a.next=o,r=r.next}while(r!==null);a===null?s=a=n:a=a.next=n}else s=a=n;r={baseState:i.baseState,firstBaseUpdate:s,lastBaseUpdate:a,shared:i.shared,effects:i.effects},t.updateQueue=r;return}t=r.lastBaseUpdate,t===null?r.firstBaseUpdate=n:t.next=n,r.lastBaseUpdate=n}function Eo(t,n,r,i){var s=t.updateQueue;Kn=!1;var a=s.firstBaseUpdate,o=s.lastBaseUpdate,c=s.shared.pending;if(c!==null){s.shared.pending=null;var l=c,d=l.next;l.next=null,o===null?a=d:o.next=d,o=l;var p=t.alternate;p!==null&&(p=p.updateQueue,c=p.lastBaseUpdate,c!==o&&(c===null?p.firstBaseUpdate=d:c.next=d,p.lastBaseUpdate=l))}if(a!==null){var u=s.baseState;o=0,p=d=l=null,c=a;do{var g=c.lane,f=c.eventTime;if((i&g)===g){p!==null&&(p=p.next={eventTime:f,lane:0,tag:c.tag,payload:c.payload,callback:c.callback,next:null});e:{var L=t,v=c;switch(g=n,f=r,v.tag){case 1:if(L=v.payload,typeof L=="function"){u=L.call(f,u,g);break e}u=L;break e;case 3:L.flags=L.flags&-65537|128;case 0:if(L=v.payload,g=typeof L=="function"?L.call(f,u,g):L,g==null)break e;u=Be({},u,g);break e;case 2:Kn=!0}}c.callback!==null&&c.lane!==0&&(t.flags|=64,g=s.effects,g===null?s.effects=[c]:g.push(c))}else f={eventTime:f,lane:g,tag:c.tag,payload:c.payload,callback:c.callback,next:null},p===null?(d=p=f,l=u):p=p.next=f,o|=g;if(c=c.next,c===null){if(c=s.shared.pending,c===null)break;g=c,c=g.next,g.next=null,s.lastBaseUpdate=g,s.shared.pending=null}}while(!0);if(p===null&&(l=u),s.baseState=l,s.firstBaseUpdate=d,s.lastBaseUpdate=p,n=s.shared.interleaved,n!==null){s=n;do o|=s.lane,s=s.next;while(s!==n)}else a===null&&(s.shared.lanes=0);Rr|=o,t.lanes=o,t.memoizedState=u}}function Bu(t,n,r){if(t=n.effects,n.effects=null,t!==null)for(n=0;n<t.length;n++){var i=t[n],s=i.callback;if(s!==null){if(i.callback=null,i=r,typeof s!="function")throw Error(V(191,s));s.call(i)}}}var la={},gn=xr(la),Bs=xr(la),Us=xr(la);function Er(t){if(t===la)throw Error(V(174));return t}function $d(t,n){switch(qe(Us,n),qe(Bs,t),qe(gn,la),t=n.nodeType,t){case 9:case 11:n=(n=n.documentElement)?n.namespaceURI:jc(null,"");break;default:t=t===8?n.parentNode:n,n=t.namespaceURI||null,t=t.tagName,n=jc(n,t)}Me(gn),qe(gn,n)}function Ni(){Me(gn),Me(Bs),Me(Us)}function rf(t){Er(Us.current);var n=Er(gn.current),r=jc(n,t.type);n!==r&&(qe(Bs,t),qe(gn,r))}function Xd(t){Bs.current===t&&(Me(gn),Me(Bs))}var De=xr(0);function No(t){for(var n=t;n!==null;){if(n.tag===13){var r=n.memoizedState;if(r!==null&&(r=r.dehydrated,r===null||r.data==="$?"||r.data==="$!"))return n}else if(n.tag===19&&n.memoizedProps.revealOrder!==void 0){if(n.flags&128)return n}else if(n.child!==null){n.child.return=n,n=n.child;continue}if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return null;n=n.return}n.sibling.return=n.return,n=n.sibling}return null}var Bl=[];function ep(){for(var t=0;t<Bl.length;t++)Bl[t]._workInProgressVersionPrimary=null;Bl.length=0}var no=Un.ReactCurrentDispatcher,Ul=Un.ReactCurrentBatchConfig,Mr=0,ze=null,Xe=null,nt=null,Co=!1,As=!1,Vs=0,BL=0;function ct(){throw Error(V(321))}function tp(t,n){if(n===null)return!1;for(var r=0;r<n.length&&r<t.length;r++)if(!ln(t[r],n[r]))return!1;return!0}function np(t,n,r,i,s,a){if(Mr=a,ze=n,n.memoizedState=null,n.updateQueue=null,n.lanes=0,no.current=t===null||t.memoizedState===null?YL:GL,t=r(i,s),As){a=0;do{if(As=!1,Vs=0,25<=a)throw Error(V(301));a+=1,nt=Xe=null,n.updateQueue=null,no.current=WL,t=r(i,s)}while(As)}if(no.current=_o,n=Xe!==null&&Xe.next!==null,Mr=0,nt=Xe=ze=null,Co=!1,n)throw Error(V(300));return t}function rp(){var t=Vs!==0;return Vs=0,t}function un(){var t={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return nt===null?ze.memoizedState=nt=t:nt=nt.next=t,nt}function Qt(){if(Xe===null){var t=ze.alternate;t=t!==null?t.memoizedState:null}else t=Xe.next;var n=nt===null?ze.memoizedState:nt.next;if(n!==null)nt=n,Xe=t;else{if(t===null)throw Error(V(310));Xe=t,t={memoizedState:Xe.memoizedState,baseState:Xe.baseState,baseQueue:Xe.baseQueue,queue:Xe.queue,next:null},nt===null?ze.memoizedState=nt=t:nt=nt.next=t}return nt}function Hs(t,n){return typeof n=="function"?n(t):n}function Vl(t){var n=Qt(),r=n.queue;if(r===null)throw Error(V(311));r.lastRenderedReducer=t;var i=Xe,s=i.baseQueue,a=r.pending;if(a!==null){if(s!==null){var o=s.next;s.next=a.next,a.next=o}i.baseQueue=s=a,r.pending=null}if(s!==null){a=s.next,i=i.baseState;var c=o=null,l=null,d=a;do{var p=d.lane;if((Mr&p)===p)l!==null&&(l=l.next={lane:0,action:d.action,hasEagerState:d.hasEagerState,eagerState:d.eagerState,next:null}),i=d.hasEagerState?d.eagerState:t(i,d.action);else{var u={lane:p,action:d.action,hasEagerState:d.hasEagerState,eagerState:d.eagerState,next:null};l===null?(c=l=u,o=i):l=l.next=u,ze.lanes|=p,Rr|=p}d=d.next}while(d!==null&&d!==a);l===null?o=i:l.next=c,ln(i,n.memoizedState)||(kt=!0),n.memoizedState=i,n.baseState=o,n.baseQueue=l,r.lastRenderedState=i}if(t=r.interleaved,t!==null){s=t;do a=s.lane,ze.lanes|=a,Rr|=a,s=s.next;while(s!==t)}else s===null&&(r.lanes=0);return[n.memoizedState,r.dispatch]}function Hl(t){var n=Qt(),r=n.queue;if(r===null)throw Error(V(311));r.lastRenderedReducer=t;var i=r.dispatch,s=r.pending,a=n.memoizedState;if(s!==null){r.pending=null;var o=s=s.next;do a=t(a,o.action),o=o.next;while(o!==s);ln(a,n.memoizedState)||(kt=!0),n.memoizedState=a,n.baseQueue===null&&(n.baseState=a),r.lastRenderedState=a}return[a,i]}function sf(){}function af(t,n){var r=ze,i=Qt(),s=n(),a=!ln(i.memoizedState,s);if(a&&(i.memoizedState=s,kt=!0),i=i.queue,ip(cf.bind(null,r,i,t),[t]),i.getSnapshot!==n||a||nt!==null&&nt.memoizedState.tag&1){if(r.flags|=2048,Ys(9,lf.bind(null,r,i,s,n),void 0,null),rt===null)throw Error(V(349));Mr&30||of(r,n,s)}return s}function of(t,n,r){t.flags|=16384,t={getSnapshot:n,value:r},n=ze.updateQueue,n===null?(n={lastEffect:null,stores:null},ze.updateQueue=n,n.stores=[t]):(r=n.stores,r===null?n.stores=[t]:r.push(t))}function lf(t,n,r,i){n.value=r,n.getSnapshot=i,df(n)&&pf(t)}function cf(t,n,r){return r(function(){df(n)&&pf(t)})}function df(t){var n=t.getSnapshot;t=t.value;try{var r=n();return!ln(t,r)}catch{return!0}}function pf(t){var n=Rn(t,1);n!==null&&on(n,t,1,-1)}function Uu(t){var n=un();return typeof t=="function"&&(t=t()),n.memoizedState=n.baseState=t,t={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Hs,lastRenderedState:t},n.queue=t,t=t.dispatch=HL.bind(null,ze,t),[n.memoizedState,t]}function Ys(t,n,r,i){return t={tag:t,create:n,destroy:r,deps:i,next:null},n=ze.updateQueue,n===null?(n={lastEffect:null,stores:null},ze.updateQueue=n,n.lastEffect=t.next=t):(r=n.lastEffect,r===null?n.lastEffect=t.next=t:(i=r.next,r.next=t,t.next=i,n.lastEffect=t)),t}function uf(){return Qt().memoizedState}function ro(t,n,r,i){var s=un();ze.flags|=t,s.memoizedState=Ys(1|n,r,void 0,i===void 0?null:i)}function Jo(t,n,r,i){var s=Qt();i=i===void 0?null:i;var a=void 0;if(Xe!==null){var o=Xe.memoizedState;if(a=o.destroy,i!==null&&tp(i,o.deps)){s.memoizedState=Ys(n,r,a,i);return}}ze.flags|=t,s.memoizedState=Ys(1|n,r,a,i)}function Vu(t,n){return ro(8390656,8,t,n)}function ip(t,n){return Jo(2048,8,t,n)}function hf(t,n){return Jo(4,2,t,n)}function mf(t,n){return Jo(4,4,t,n)}function gf(t,n){if(typeof n=="function")return t=t(),n(t),function(){n(null)};if(n!=null)return t=t(),n.current=t,function(){n.current=null}}function ff(t,n,r){return r=r!=null?r.concat([t]):null,Jo(4,4,gf.bind(null,n,t),r)}function sp(){}function xf(t,n){var r=Qt();n=n===void 0?null:n;var i=r.memoizedState;return i!==null&&n!==null&&tp(n,i[1])?i[0]:(r.memoizedState=[t,n],t)}function Lf(t,n){var r=Qt();n=n===void 0?null:n;var i=r.memoizedState;return i!==null&&n!==null&&tp(n,i[1])?i[0]:(t=t(),r.memoizedState=[t,n],t)}function vf(t,n,r){return Mr&21?(ln(r,n)||(r=wg(),ze.lanes|=r,Rr|=r,t.baseState=!0),n):(t.baseState&&(t.baseState=!1,kt=!0),t.memoizedState=r)}function UL(t,n){var r=Ce;Ce=r!==0&&4>r?r:4,t(!0);var i=Ul.transition;Ul.transition={};try{t(!1),n()}finally{Ce=r,Ul.transition=i}}function bf(){return Qt().memoizedState}function VL(t,n,r){var i=cr(t);if(r={lane:i,action:r,hasEagerState:!1,eagerState:null,next:null},yf(t))jf(n,r);else if(r=tf(t,n,r,i),r!==null){var s=xt();on(r,t,i,s),wf(r,n,i)}}function HL(t,n,r){var i=cr(t),s={lane:i,action:r,hasEagerState:!1,eagerState:null,next:null};if(yf(t))jf(n,s);else{var a=t.alternate;if(t.lanes===0&&(a===null||a.lanes===0)&&(a=n.lastRenderedReducer,a!==null))try{var o=n.lastRenderedState,c=a(o,r);if(s.hasEagerState=!0,s.eagerState=c,ln(c,o)){var l=n.interleaved;l===null?(s.next=s,Kd(n)):(s.next=l.next,l.next=s),n.interleaved=s;return}}catch{}finally{}r=tf(t,n,s,i),r!==null&&(s=xt(),on(r,t,i,s),wf(r,n,i))}}function yf(t){var n=t.alternate;return t===ze||n!==null&&n===ze}function jf(t,n){As=Co=!0;var r=t.pending;r===null?n.next=n:(n.next=r.next,r.next=n),t.pending=n}function wf(t,n,r){if(r&4194240){var i=n.lanes;i&=t.pendingLanes,r|=i,n.lanes=r,Rd(t,r)}}var _o={readContext:Wt,useCallback:ct,useContext:ct,useEffect:ct,useImperativeHandle:ct,useInsertionEffect:ct,useLayoutEffect:ct,useMemo:ct,useReducer:ct,useRef:ct,useState:ct,useDebugValue:ct,useDeferredValue:ct,useTransition:ct,useMutableSource:ct,useSyncExternalStore:ct,useId:ct,unstable_isNewReconciler:!1},YL={readContext:Wt,useCallback:function(t,n){return un().memoizedState=[t,n===void 0?null:n],t},useContext:Wt,useEffect:Vu,useImperativeHandle:function(t,n,r){return r=r!=null?r.concat([t]):null,ro(4194308,4,gf.bind(null,n,t),r)},useLayoutEffect:function(t,n){return ro(4194308,4,t,n)},useInsertionEffect:function(t,n){return ro(4,2,t,n)},useMemo:function(t,n){var r=un();return n=n===void 0?null:n,t=t(),r.memoizedState=[t,n],t},useReducer:function(t,n,r){var i=un();return n=r!==void 0?r(n):n,i.memoizedState=i.baseState=n,t={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:n},i.queue=t,t=t.dispatch=VL.bind(null,ze,t),[i.memoizedState,t]},useRef:function(t){var n=un();return t={current:t},n.memoizedState=t},useState:Uu,useDebugValue:sp,useDeferredValue:function(t){return un().memoizedState=t},useTransition:function(){var t=Uu(!1),n=t[0];return t=UL.bind(null,t[1]),un().memoizedState=t,[n,t]},useMutableSource:function(){},useSyncExternalStore:function(t,n,r){var i=ze,s=un();if(Pe){if(r===void 0)throw Error(V(407));r=r()}else{if(r=n(),rt===null)throw Error(V(349));Mr&30||of(i,n,r)}s.memoizedState=r;var a={value:r,getSnapshot:n};return s.queue=a,Vu(cf.bind(null,i,a,t),[t]),i.flags|=2048,Ys(9,lf.bind(null,i,a,r,n),void 0,null),r},useId:function(){var t=un(),n=rt.identifierPrefix;if(Pe){var r=_n,i=Cn;r=(i&~(1<<32-an(i)-1)).toString(32)+r,n=":"+n+"R"+r,r=Vs++,0<r&&(n+="H"+r.toString(32)),n+=":"}else r=BL++,n=":"+n+"r"+r.toString(32)+":";return t.memoizedState=n},unstable_isNewReconciler:!1},GL={readContext:Wt,useCallback:xf,useContext:Wt,useEffect:ip,useImperativeHandle:ff,useInsertionEffect:hf,useLayoutEffect:mf,useMemo:Lf,useReducer:Vl,useRef:uf,useState:function(){return Vl(Hs)},useDebugValue:sp,useDeferredValue:function(t){var n=Qt();return vf(n,Xe.memoizedState,t)},useTransition:function(){var t=Vl(Hs)[0],n=Qt().memoizedState;return[t,n]},useMutableSource:sf,useSyncExternalStore:af,useId:bf,unstable_isNewReconciler:!1},WL={readContext:Wt,useCallback:xf,useContext:Wt,useEffect:ip,useImperativeHandle:ff,useInsertionEffect:hf,useLayoutEffect:mf,useMemo:Lf,useReducer:Hl,useRef:uf,useState:function(){return Hl(Hs)},useDebugValue:sp,useDeferredValue:function(t){var n=Qt();return Xe===null?n.memoizedState=t:vf(n,Xe.memoizedState,t)},useTransition:function(){var t=Hl(Hs)[0],n=Qt().memoizedState;return[t,n]},useMutableSource:sf,useSyncExternalStore:af,useId:bf,unstable_isNewReconciler:!1};function en(t,n){if(t&&t.defaultProps){n=Be({},n),t=t.defaultProps;for(var r in t)n[r]===void 0&&(n[r]=t[r]);return n}return n}function Vc(t,n,r,i){n=t.memoizedState,r=r(i,n),r=r==null?n:Be({},n,r),t.memoizedState=r,t.lanes===0&&(t.updateQueue.baseState=r)}var $o={isMounted:function(t){return(t=t._reactInternals)?Yr(t)===t:!1},enqueueSetState:function(t,n,r){t=t._reactInternals;var i=xt(),s=cr(t),a=qn(i,s);a.payload=n,r!=null&&(a.callback=r),n=or(t,a,s),n!==null&&(on(n,t,s,i),to(n,t,s))},enqueueReplaceState:function(t,n,r){t=t._reactInternals;var i=xt(),s=cr(t),a=qn(i,s);a.tag=1,a.payload=n,r!=null&&(a.callback=r),n=or(t,a,s),n!==null&&(on(n,t,s,i),to(n,t,s))},enqueueForceUpdate:function(t,n){t=t._reactInternals;var r=xt(),i=cr(t),s=qn(r,i);s.tag=2,n!=null&&(s.callback=n),n=or(t,s,i),n!==null&&(on(n,t,i,r),to(n,t,i))}};function Hu(t,n,r,i,s,a,o){return t=t.stateNode,typeof t.shouldComponentUpdate=="function"?t.shouldComponentUpdate(i,a,o):n.prototype&&n.prototype.isPureReactComponent?!Ps(r,i)||!Ps(s,a):!0}function kf(t,n,r){var i=!1,s=mr,a=n.contextType;return typeof a=="object"&&a!==null?a=Wt(a):(s=St(n)?Fr:ut.current,i=n.contextTypes,a=(i=i!=null)?Ai(t,s):mr),n=new n(r,a),t.memoizedState=n.state!==null&&n.state!==void 0?n.state:null,n.updater=$o,t.stateNode=n,n._reactInternals=t,i&&(t=t.stateNode,t.__reactInternalMemoizedUnmaskedChildContext=s,t.__reactInternalMemoizedMaskedChildContext=a),n}function Yu(t,n,r,i){t=n.state,typeof n.componentWillReceiveProps=="function"&&n.componentWillReceiveProps(r,i),typeof n.UNSAFE_componentWillReceiveProps=="function"&&n.UNSAFE_componentWillReceiveProps(r,i),n.state!==t&&$o.enqueueReplaceState(n,n.state,null)}function Hc(t,n,r,i){var s=t.stateNode;s.props=r,s.state=t.memoizedState,s.refs={},Jd(t);var a=n.contextType;typeof a=="object"&&a!==null?s.context=Wt(a):(a=St(n)?Fr:ut.current,s.context=Ai(t,a)),s.state=t.memoizedState,a=n.getDerivedStateFromProps,typeof a=="function"&&(Vc(t,n,a,r),s.state=t.memoizedState),typeof n.getDerivedStateFromProps=="function"||typeof s.getSnapshotBeforeUpdate=="function"||typeof s.UNSAFE_componentWillMount!="function"&&typeof s.componentWillMount!="function"||(n=s.state,typeof s.componentWillMount=="function"&&s.componentWillMount(),typeof s.UNSAFE_componentWillMount=="function"&&s.UNSAFE_componentWillMount(),n!==s.state&&$o.enqueueReplaceState(s,s.state,null),Eo(t,r,s,i),s.state=t.memoizedState),typeof s.componentDidMount=="function"&&(t.flags|=4194308)}function Ci(t,n){try{var r="",i=n;do r+=y0(i),i=i.return;while(i);var s=r}catch(a){s=` 40Error generating stack: `+a.message+` 41`+a.stack}return{value:t,source:n,stack:s,digest:null}}function Yl(t,n,r){return{value:t,source:null,stack:r??null,digest:n??null}}function Yc(t,n){try{console.error(n.value)}catch(r){setTimeout(function(){throw r})}}var QL=typeof WeakMap=="function"?WeakMap:Map;function Af(t,n,r){r=qn(-1,r),r.tag=3,r.payload={element:null};var i=n.value;return r.callback=function(){qo||(qo=!0,td=i),Yc(t,n)},r}function Sf(t,n,r){r=qn(-1,r),r.tag=3;var i=t.type.getDerivedStateFromError;if(typeof i=="function"){var s=n.value;r.payload=function(){return i(s)},r.callback=function(){Yc(t,n)}}var a=t.stateNode;return a!==null&&typeof a.componentDidCatch=="function"&&(r.callback=function(){Yc(t,n),typeof i!="function"&&(lr===null?lr=new Set([this]):lr.add(this));var o=n.stack;this.componentDidCatch(n.value,{componentStack:o!==null?o:""})}),r}function Gu(t,n,r){var i=t.pingCache;if(i===null){i=t.pingCache=new QL;var s=new Set;i.set(n,s)}else s=i.get(n),s===void 0&&(s=new Set,i.set(n,s));s.has(r)||(s.add(r),t=lv.bind(null,t,n,r),n.then(t,t))}function Wu(t){do{var n;if((n=t.tag===13)&&(n=t.memoizedState,n=n!==null?n.dehydrated!==null:!0),n)return t;t=t.return}while(t!==null);return null}function Qu(t,n,r,i,s){return t.mode&1?(t.flags|=65536,t.lanes=s,t):(t===n?t.flags|=65536:(t.flags|=128,r.flags|=131072,r.flags&=-52805,r.tag===1&&(r.alternate===null?r.tag=17:(n=qn(-1,1),n.tag=2,or(r,n,1))),r.lanes|=1),t)}var ZL=Un.ReactCurrentOwner,kt=!1;function gt(t,n,r,i){n.child=t===null?ef(n,null,r,i):Ei(n,t.child,r,i)}function Zu(t,n,r,i,s){r=r.render;var a=n.ref;return yi(n,s),i=np(t,n,r,i,a,s),r=rp(),t!==null&&!kt?(n.updateQueue=t.updateQueue,n.flags&=-2053,t.lanes&=~s,Pn(t,n,s)):(Pe&&r&&Hd(n),n.flags|=1,gt(t,n,i,s),n.child)}function Ku(t,n,r,i,s){if(t===null){var a=r.type;return typeof a=="function"&&!hp(a)&&a.defaultProps===void 0&&r.compare===null&&r.defaultProps===void 0?(n.tag=15,n.type=a,Ef(t,n,a,i,s)):(t=oo(r.type,null,i,n,n.mode,s),t.ref=n.ref,t.return=n,n.child=t)}if(a=t.child,!(t.lanes&s)){var o=a.memoizedProps;if(r=r.compare,r=r!==null?r:Ps,r(o,i)&&t.ref===n.ref)return Pn(t,n,s)}return n.flags|=1,t=dr(a,i),t.ref=n.ref,t.return=n,n.child=t}function Ef(t,n,r,i,s){if(t!==null){var a=t.memoizedProps;if(Ps(a,i)&&t.ref===n.ref)if(kt=!1,n.pendingProps=i=a,(t.lanes&s)!==0)t.flags&131072&&(kt=!0);else return n.lanes=t.lanes,Pn(t,n,s)}return Gc(t,n,r,i,s)}function Nf(t,n,r){var i=n.pendingProps,s=i.children,a=t!==null?t.memoizedState:null;if(i.mode==="hidden")if(!(n.mode&1))n.memoizedState={baseLanes:0,cachePool:null,transitions:null},qe(fi,qt),qt|=r;else{if(!(r&1073741824))return t=a!==null?a.baseLanes|r:r,n.lanes=n.childLanes=1073741824,n.memoizedState={baseLanes:t,cachePool:null,transitions:null},n.updateQueue=null,qe(fi,qt),qt|=t,null;n.memoizedState={baseLanes:0,cachePool:null,transitions:null},i=a!==null?a.baseLanes:r,qe(fi,qt),qt|=i}else a!==null?(i=a.baseLanes|r,n.memoizedState=null):i=r,qe(fi,qt),qt|=i;return gt(t,n,s,r),n.child}function Cf(t,n){var r=n.ref;(t===null&&r!==null||t!==null&&t.ref!==r)&&(n.flags|=512,n.flags|=2097152)}
vendor: 4,057 bytes, line 41
41function Gc(t,n,r,i,s){var a=St(r)?Fr:ut.current;return a=Ai(n,a),yi(n,s),r=np(t,n,r,i,a,s),i=rp(),t!==null&&!kt?(n.updateQueue=t.updateQueue,n.flags&=-2053,t.lanes&=~s,Pn(t,n,s)):(Pe&&i&&Hd(n),n.flags|=1,gt(t,n,r,s),n.child)}function Ju(t,n,r,i,s){if(St(r)){var a=!0;jo(n)}else a=!1;if(yi(n,s),n.stateNode===null)io(t,n),kf(n,r,i),Hc(n,r,i,s),i=!0;else if(t===null){var o=n.stateNode,c=n.memoizedProps;o.props=c;var l=o.context,d=r.contextType;typeof d=="object"&&d!==null?d=Wt(d):(d=St(r)?Fr:ut.current,d=Ai(n,d));var p=r.getDerivedStateFromProps,u=typeof p=="function"||typeof o.getSnapshotBeforeUpdate=="function";u||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(c!==i||l!==d)&&Yu(n,o,i,d),Kn=!1;var g=n.memoizedState;o.state=g,Eo(n,i,o,s),l=n.memoizedState,c!==i||g!==l||At.current||Kn?(typeof p=="function"&&(Vc(n,r,p,i),l=n.memoizedState),(c=Kn||Hu(n,r,c,i,g,l,d))?(u||typeof o.UNSAFE_componentWillMount!="function"&&typeof o.componentWillMount!="function"||(typeof o.componentWillMount=="function"&&o.componentWillMount(),typeof o.UNSAFE_componentWillMount=="function"&&o.UNSAFE_componentWillMount()),typeof o.componentDidMount=="function"&&(n.flags|=4194308)):(typeof o.componentDidMount=="function"&&(n.flags|=4194308),n.memoizedProps=i,n.memoizedState=l),o.props=i,o.state=l,o.context=d,i=c):(typeof o.componentDidMount=="function"&&(n.flags|=4194308),i=!1)}else{o=n.stateNode,nf(t,n),c=n.memoizedProps,d=n.type===n.elementType?c:en(n.type,c),o.props=d,u=n.pendingProps,g=o.context,l=r.contextType,typeof l=="object"&&l!==null?l=Wt(l):(l=St(r)?Fr:ut.current,l=Ai(n,l));var f=r.getDerivedStateFromProps;(p=typeof f=="function"||typeof o.getSnapshotBeforeUpdate=="function")||typeof o.UNSAFE_componentWillReceiveProps!="function"&&typeof o.componentWillReceiveProps!="function"||(c!==u||g!==l)&&Yu(n,o,i,l),Kn=!1,g=n.memoizedState,o.state=g,Eo(n,i,o,s);var L=n.memoizedState;c!==u||g!==L||At.current||Kn?(typeof f=="function"&&(Vc(n,r,f,i),L=n.memoizedState),(d=Kn||Hu(n,r,d,i,g,L,l)||!1)?(p||typeof o.UNSAFE_componentWillUpdate!="function"&&typeof o.componentWillUpdate!="function"||(typeof o.componentWillUpdate=="function"&&o.componentWillUpdate(i,L,l),typeof o.UNSAFE_componentWillUpdate=="function"&&o.UNSAFE_componentWillUpdate(i,L,l)),typeof o.componentDidUpdate=="function"&&(n.flags|=4),typeof o.getSnapshotBeforeUpdate=="function"&&(n.flags|=1024)):(typeof o.componentDidUpdate!="function"||c===t.memoizedProps&&g===t.memoizedState||(n.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||c===t.memoizedProps&&g===t.memoizedState||(n.flags|=1024),n.memoizedProps=i,n.memoizedState=L),o.props=i,o.state=L,o.context=l,i=d):(typeof o.componentDidUpdate!="function"||c===t.memoizedProps&&g===t.memoizedState||(n.flags|=4),typeof o.getSnapshotBeforeUpdate!="function"||c===t.memoizedProps&&g===t.memoizedState||(n.flags|=1024),i=!1)}return Wc(t,n,r,i,a,s)}function Wc(t,n,r,i,s,a){Cf(t,n);var o=(n.flags&128)!==0;if(!i&&!o)return s&&Ru(n,r,!1),Pn(t,n,a);i=n.stateNode,ZL.current=n;var c=o&&typeof r.getDerivedStateFromError!="function"?null:i.render();return n.flags|=1,t!==null&&o?(n.child=Ei(n,t.child,null,a),n.child=Ei(n,null,c,a)):gt(t,n,c,a),n.memoizedState=i.state,s&&Ru(n,r,!0),n.child}function _f(t){var n=t.stateNode;n.pendingContext?Mu(t,n.pendingContext,n.pendingContext!==n.context):n.context&&Mu(t,n.context,!1),$d(t,n.containerInfo)}function $u(t,n,r,i,s){return Si(),Gd(s),n.flags|=256,gt(t,n,r,i),n.child}var Qc={dehydrated:null,treeContext:null,retryLane:0};function Zc(t){return{baseLanes:t,cachePool:null,transitions:null}}function Tf(t,n,r){var i=n.pendingProps,s=De.current,a=!1,o=(n.flags&128)!==0,c;if((c=o)||(c=t!==null&&t.memoizedState===null?!1:(s&2)!==0),c?(a=!0,n.flags&=-129):(t===null||t.memoizedState!==null)&&(s|=1),qe(De,s&1),t===null)return Bc(n),t=n.memoizedState,t!==null&&(t=t.dehydrated,t!==null)?(n.mode&1?t.data==="$!"?n.lanes=8:n.lanes=1073741824:n.lanes=1,null):(o=i.children,t=i.fallback,a?(i=n.mode,a=n.child,o={mode:"hidden",children:o}
vendor: 9,110 bytes, line 41
41,!(i&1)&&a!==null?(a.childLanes=0,a.pendingProps=o):a=tl(o,i,0,null),t=_r(t,i,r,null),a.return=n,t.return=n,a.sibling=t,n.child=a,n.child.memoizedState=Zc(r),n.memoizedState=Qc,t):ap(n,o));if(s=t.memoizedState,s!==null&&(c=s.dehydrated,c!==null))return KL(t,n,o,i,c,s,r);if(a){a=i.fallback,o=n.mode,s=t.child,c=s.sibling;var l={mode:"hidden",children:i.children};return!(o&1)&&n.child!==s?(i=n.child,i.childLanes=0,i.pendingProps=l,n.deletions=null):(i=dr(s,l),i.subtreeFlags=s.subtreeFlags&14680064),c!==null?a=dr(c,a):(a=_r(a,o,r,null),a.flags|=2),a.return=n,i.return=n,i.sibling=a,n.child=i,i=a,a=n.child,o=t.child.memoizedState,o=o===null?Zc(r):{baseLanes:o.baseLanes|r,cachePool:null,transitions:o.transitions},a.memoizedState=o,a.childLanes=t.childLanes&~r,n.memoizedState=Qc,i}return a=t.child,t=a.sibling,i=dr(a,{mode:"visible",children:i.children}),!(n.mode&1)&&(i.lanes=r),i.return=n,i.sibling=null,t!==null&&(r=n.deletions,r===null?(n.deletions=[t],n.flags|=16):r.push(t)),n.child=i,n.memoizedState=null,i}function ap(t,n){return n=tl({mode:"visible",children:n},t.mode,0,null),n.return=t,t.child=n}function Ta(t,n,r,i){return i!==null&&Gd(i),Ei(n,t.child,null,r),t=ap(n,n.pendingProps.children),t.flags|=2,n.memoizedState=null,t}function KL(t,n,r,i,s,a,o){if(r)return n.flags&256?(n.flags&=-257,i=Yl(Error(V(422))),Ta(t,n,o,i)):n.memoizedState!==null?(n.child=t.child,n.flags|=128,null):(a=i.fallback,s=n.mode,i=tl({mode:"visible",children:i.children},s,0,null),a=_r(a,s,o,null),a.flags|=2,i.return=n,a.return=n,i.sibling=a,n.child=i,n.mode&1&&Ei(n,t.child,null,o),n.child.memoizedState=Zc(o),n.memoizedState=Qc,a);if(!(n.mode&1))return Ta(t,n,o,null);if(s.data==="$!"){if(i=s.nextSibling&&s.nextSibling.dataset,i)var c=i.dgst;return i=c,a=Error(V(419)),i=Yl(a,i,void 0),Ta(t,n,o,i)}if(c=(o&t.childLanes)!==0,kt||c){if(i=rt,i!==null){switch(o&-o){case 4:s=2;break;case 16:s=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:s=32;break;case 536870912:s=268435456;break;default:s=0}s=s&(i.suspendedLanes|o)?0:s,s!==0&&s!==a.retryLane&&(a.retryLane=s,Rn(t,s),on(i,t,s,-1))}return up(),i=Yl(Error(V(421))),Ta(t,n,o,i)}return s.data==="$?"?(n.flags|=128,n.child=t.child,n=cv.bind(null,t),s._reactRetry=n,null):(t=a.treeContext,Ft=ar(s.nextSibling),Ot=n,Pe=!0,sn=null,t!==null&&(Bt[Ut++]=Cn,Bt[Ut++]=_n,Bt[Ut++]=Or,Cn=t.id,_n=t.overflow,Or=n),n=ap(n,i.children),n.flags|=4096,n)}function Xu(t,n,r){t.lanes|=n;var i=t.alternate;i!==null&&(i.lanes|=n),Uc(t.return,n,r)}function Gl(t,n,r,i,s){var a=t.memoizedState;a===null?t.memoizedState={isBackwards:n,rendering:null,renderingStartTime:0,last:i,tail:r,tailMode:s}:(a.isBackwards=n,a.rendering=null,a.renderingStartTime=0,a.last=i,a.tail=r,a.tailMode=s)}function qf(t,n,r){var i=n.pendingProps,s=i.revealOrder,a=i.tail;if(gt(t,n,i.children,r),i=De.current,i&2)i=i&1|2,n.flags|=128;else{if(t!==null&&t.flags&128)e:for(t=n.child;t!==null;){if(t.tag===13)t.memoizedState!==null&&Xu(t,r,n);else if(t.tag===19)Xu(t,r,n);else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===n)break e;for(;t.sibling===null;){if(t.return===null||t.return===n)break e;t=t.return}t.sibling.return=t.return,t=t.sibling}i&=1}if(qe(De,i),!(n.mode&1))n.memoizedState=null;else switch(s){case"forwards":for(r=n.child,s=null;r!==null;)t=r.alternate,t!==null&&No(t)===null&&(s=r),r=r.sibling;r=s,r===null?(s=n.child,n.child=null):(s=r.sibling,r.sibling=null),Gl(n,!1,s,r,a);break;case"backwards":for(r=null,s=n.child,n.child=null;s!==null;){if(t=s.alternate,t!==null&&No(t)===null){n.child=s;break}t=s.sibling,s.sibling=r,r=s,s=t}Gl(n,!0,r,null,a);break;case"together":Gl(n,!1,null,null,void 0);break;default:n.memoizedState=null}return n.child}function io(t,n){!(n.mode&1)&&t!==null&&(t.alternate=null,n.alternate=null,n.flags|=2)}function Pn(t,n,r){if(t!==null&&(n.dependencies=t.dependencies),Rr|=n.lanes,!(r&n.childLanes))return null;if(t!==null&&n.child!==t.child)throw Error(V(153));if(n.child!==null){for(t=n.child,r=dr(t,t.pendingProps),n.child=r,r.return=n;t.sibling!==null;)t=t.sibling,r=r.sibling=dr(t,t.pendingProps),r.return=n;r.sibling=null}return n.child}function JL(t,n,r){switch(n.tag){case 3:_f(n),Si();break;case 5:rf(n);break;case 1:St(n.type)&&jo(n);break;case 4:$d(n,n.stateNode.containerInfo);break;case 10:var i=n.type._context,s=n.memoizedProps.value;qe(Ao,i._currentValue),i._currentValue=s;break;case 13:if(i=n.memoizedState,i!==null)return i.dehydrated!==null?(qe(De,De.current&1),n.flags|=128,null):r&n.child.childLanes?Tf(t,n,r):(qe(De,De.current&1),t=Pn(t,n,r),t!==null?t.sibling:null);qe(De,De.current&1);break;case 19:if(i=(r&n.childLanes)!==0,t.flags&128){if(i)return qf(t,n,r);n.flags|=128}if(s=n.memoizedState,s!==null&&(s.rendering=null,s.tail=null,s.lastEffect=null),qe(De,De.current),i)break;return null;case 22:case 23:return n.lanes=0,Nf(t,n,r)}return Pn(t,n,r)}var Ff,Kc,Of,Mf;Ff=function(t,n){for(var r=n.child;r!==null;){if(r.tag===5||r.tag===6)t.appendChild(r.stateNode);else if(r.tag!==4&&r.child!==null){r.child.return=r,r=r.child;continue}if(r===n)break;for(;r.sibling===null;){if(r.return===null||r.return===n)return;r=r.return}r.sibling.return=r.return,r=r.sibling}};Kc=function(){};Of=function(t,n,r,i){var s=t.memoizedProps;if(s!==i){t=n.stateNode,Er(gn.current);var a=null;switch(r){case"input":s=Lc(t,s),i=Lc(t,i),a=[];break;case"select":s=Be({},s,{value:void 0}),i=Be({},i,{value:void 0}),a=[];break;case"textarea":s=yc(t,s),i=yc(t,i),a=[];break;default:typeof s.onClick!="function"&&typeof i.onClick=="function"&&(t.onclick=bo)}wc(r,i);var o;r=null;for(d in s)if(!i.hasOwnProperty(d)&&s.hasOwnProperty(d)&&s[d]!=null)if(d==="style"){var c=s[d];for(o in c)c.hasOwnProperty(o)&&(r||(r={}),r[o]="")}else d!=="dangerouslySetInnerHTML"&&d!=="children"&&d!=="suppressContentEditableWarning"&&d!=="suppressHydrationWarning"&&d!=="autoFocus"&&(_s.hasOwnProperty(d)?a||(a=[]):(a=a||[]).push(d,null));for(d in i){var l=i[d];if(c=s!=null?s[d]:void 0,i.hasOwnProperty(d)&&l!==c&&(l!=null||c!=null))if(d==="style")if(c){for(o in c)!c.hasOwnProperty(o)||l&&l.hasOwnProperty(o)||(r||(r={}),r[o]="");for(o in l)l.hasOwnProperty(o)&&c[o]!==l[o]&&(r||(r={}),r[o]=l[o])}else r||(a||(a=[]),a.push(d,r)),r=l;else d==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,c=c?c.__html:void 0,l!=null&&c!==l&&(a=a||[]).push(d,l)):d==="children"?typeof l!="string"&&typeof l!="number"||(a=a||[]).push(d,""+l):d!=="suppressContentEditableWarning"&&d!=="suppressHydrationWarning"&&(_s.hasOwnProperty(d)?(l!=null&&d==="onScroll"&&Oe("scroll",t),a||c===l||(a=[])):(a=a||[]).push(d,l))}r&&(a=a||[]).push("style",r);var d=a;(n.updateQueue=d)&&(n.flags|=4)}};Mf=function(t,n,r,i){r!==i&&(n.flags|=4)};function $i(t,n){if(!Pe)switch(t.tailMode){case"hidden":n=t.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t.tail=null:r.sibling=null;break;case"collapsed":r=t.tail;for(var i=null;r!==null;)r.alternate!==null&&(i=r),r=r.sibling;i===null?n||t.tail===null?t.tail=null:t.tail.sibling=null:i.sibling=null}}function dt(t){var n=t.alternate!==null&&t.alternate.child===t.child,r=0,i=0;if(n)for(var s=t.child;s!==null;)r|=s.lanes|s.childLanes,i|=s.subtreeFlags&14680064,i|=s.flags&14680064,s.return=t,s=s.sibling;else for(s=t.child;s!==null;)r|=s.lanes|s.childLanes,i|=s.subtreeFlags,i|=s.flags,s.return=t,s=s.sibling;return t.subtreeFlags|=i,t.childLanes=r,n}function $L(t,n,r){var i=n.pendingProps;switch(Yd(n),n.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return dt(n),null;case 1:return St(n.type)&&yo(),dt(n),null;case 3:return i=n.stateNode,Ni(),Me(At),Me(ut),ep(),i.pendingContext&&(i.context=i.pendingContext,i.pendingContext=null),(t===null||t.child===null)&&(Ca(n)?n.flags|=4:t===null||t.memoizedState.isDehydrated&&!(n.flags&256)||(n.flags|=1024,sn!==null&&(id(sn),sn=null))),Kc(t,n),dt(n),null;case 5:Xd(n);var s=Er(Us.current);if(r=n.type,t!==null&&n.stateNode!=null)Of(t,n,r,i,s),t.ref!==n.ref&&(n.flags|=512,n.flags|=2097152);else{if(!i){if(n.stateNode===null)throw Error(V(166));return dt(n),null}if(t=Er(gn.current),Ca(n)){i=n.stateNode,r=n.type;var a=n.memoizedProps;switch(i[hn]=n,i[zs]=a,t=(n.mode&1)!==0,r){case"dialog":Oe("cancel",i),Oe("close",i);break;case"iframe":case"object":case"embed":Oe("load",i);break;case"video":case"audio":for(s=0;s<gs.length;s++)Oe(gs[s],i);break;case"source":Oe("error",i);break;case"img":case"image":case"link":Oe("error",i),Oe("load",i);break;case"details":Oe("toggle",i);break;case"input":lu(i,a),Oe("invalid",i);break;case"select":i._wrapperState={wasMultiple:!!a.multiple},Oe("invalid",i);break;case"textarea":du(i,a),Oe("invalid",i)}wc(r,a),s=null;for(var o in a)if(a.hasOwnProperty(o)){var c=a[o];o==="children"?typeof c=="string"?i.textContent!==c&&(a.suppressHydrationWarning!==!0&&Na(i.textContent,c,t),s=["children",c]):typeof c=="number"&&i.textContent!==""+c&&(a.suppressHydrationWarning!==!0&&Na(i.textContent,c,t),s=["children",""+c
vendor: 29,785 bytes, line 41
41]):_s.hasOwnProperty(o)&&c!=null&&o==="onScroll"&&Oe("scroll",i)}switch(r){case"input":ba(i),cu(i,a,!0);break;case"textarea":ba(i),pu(i);break;case"select":case"option":break;default:typeof a.onClick=="function"&&(i.onclick=bo)}i=s,n.updateQueue=i,i!==null&&(n.flags|=4)}else{o=s.nodeType===9?s:s.ownerDocument,t==="http://www.w3.org/1999/xhtml"&&(t=lg(r)),t==="http://www.w3.org/1999/xhtml"?r==="script"?(t=o.createElement("div"),t.innerHTML="<script><\/script>",t=t.removeChild(t.firstChild)):typeof i.is=="string"?t=o.createElement(r,{is:i.is}):(t=o.createElement(r),r==="select"&&(o=t,i.multiple?o.multiple=!0:i.size&&(o.size=i.size))):t=o.createElementNS(t,r),t[hn]=n,t[zs]=i,Ff(t,n,!1,!1),n.stateNode=t;e:{switch(o=kc(r,i),r){case"dialog":Oe("cancel",t),Oe("close",t),s=i;break;case"iframe":case"object":case"embed":Oe("load",t),s=i;break;case"video":case"audio":for(s=0;s<gs.length;s++)Oe(gs[s],t);s=i;break;case"source":Oe("error",t),s=i;break;case"img":case"image":case"link":Oe("error",t),Oe("load",t),s=i;break;case"details":Oe("toggle",t),s=i;break;case"input":lu(t,i),s=Lc(t,i),Oe("invalid",t);break;case"option":s=i;break;case"select":t._wrapperState={wasMultiple:!!i.multiple},s=Be({},i,{value:void 0}),Oe("invalid",t);break;case"textarea":du(t,i),s=yc(t,i),Oe("invalid",t);break;default:s=i}wc(r,s),c=s;for(a in c)if(c.hasOwnProperty(a)){var l=c[a];a==="style"?pg(t,l):a==="dangerouslySetInnerHTML"?(l=l?l.__html:void 0,l!=null&&cg(t,l)):a==="children"?typeof l=="string"?(r!=="textarea"||l!=="")&&Ts(t,l):typeof l=="number"&&Ts(t,""+l):a!=="suppressContentEditableWarning"&&a!=="suppressHydrationWarning"&&a!=="autoFocus"&&(_s.hasOwnProperty(a)?l!=null&&a==="onScroll"&&Oe("scroll",t):l!=null&&_d(t,a,l,o))}switch(r){case"input":ba(t),cu(t,i,!1);break;case"textarea":ba(t),pu(t);break;case"option":i.value!=null&&t.setAttribute("value",""+hr(i.value));break;case"select":t.multiple=!!i.multiple,a=i.value,a!=null?xi(t,!!i.multiple,a,!1):i.defaultValue!=null&&xi(t,!!i.multiple,i.defaultValue,!0);break;default:typeof s.onClick=="function"&&(t.onclick=bo)}switch(r){case"button":case"input":case"select":case"textarea":i=!!i.autoFocus;break e;case"img":i=!0;break e;default:i=!1}}i&&(n.flags|=4)}n.ref!==null&&(n.flags|=512,n.flags|=2097152)}return dt(n),null;case 6:if(t&&n.stateNode!=null)Mf(t,n,t.memoizedProps,i);else{if(typeof i!="string"&&n.stateNode===null)throw Error(V(166));if(r=Er(Us.current),Er(gn.current),Ca(n)){if(i=n.stateNode,r=n.memoizedProps,i[hn]=n,(a=i.nodeValue!==r)&&(t=Ot,t!==null))switch(t.tag){case 3:Na(i.nodeValue,r,(t.mode&1)!==0);break;case 5:t.memoizedProps.suppressHydrationWarning!==!0&&Na(i.nodeValue,r,(t.mode&1)!==0)}a&&(n.flags|=4)}else i=(r.nodeType===9?r:r.ownerDocument).createTextNode(i),i[hn]=n,n.stateNode=i}return dt(n),null;case 13:if(Me(De),i=n.memoizedState,t===null||t.memoizedState!==null&&t.memoizedState.dehydrated!==null){if(Pe&&Ft!==null&&n.mode&1&&!(n.flags&128))$g(),Si(),n.flags|=98560,a=!1;else if(a=Ca(n),i!==null&&i.dehydrated!==null){if(t===null){if(!a)throw Error(V(318));if(a=n.memoizedState,a=a!==null?a.dehydrated:null,!a)throw Error(V(317));a[hn]=n}else Si(),!(n.flags&128)&&(n.memoizedState=null),n.flags|=4;dt(n),a=!1}else sn!==null&&(id(sn),sn=null),a=!0;if(!a)return n.flags&65536?n:null}return n.flags&128?(n.lanes=r,n):(i=i!==null,i!==(t!==null&&t.memoizedState!==null)&&i&&(n.child.flags|=8192,n.mode&1&&(t===null||De.current&1?et===0&&(et=3):up())),n.updateQueue!==null&&(n.flags|=4),dt(n),null);case 4:return Ni(),Kc(t,n),t===null&&Is(n.stateNode.containerInfo),dt(n),null;case 10:return Zd(n.type._context),dt(n),null;case 17:return St(n.type)&&yo(),dt(n),null;case 19:if(Me(De),a=n.memoizedState,a===null)return dt(n),null;if(i=(n.flags&128)!==0,o=a.rendering,o===null)if(i)$i(a,!1);else{if(et!==0||t!==null&&t.flags&128)for(t=n.child;t!==null;){if(o=No(t),o!==null){for(n.flags|=128,$i(a,!1),i=o.updateQueue,i!==null&&(n.updateQueue=i,n.flags|=4),n.subtreeFlags=0,i=r,r=n.child;r!==null;)a=r,t=i,a.flags&=14680066,o=a.alternate,o===null?(a.childLanes=0,a.lanes=t,a.child=null,a.subtreeFlags=0,a.memoizedProps=null,a.memoizedState=null,a.updateQueue=null,a.dependencies=null,a.stateNode=null):(a.childLanes=o.childLanes,a.lanes=o.lanes,a.child=o.child,a.subtreeFlags=0,a.deletions=null,a.memoizedProps=o.memoizedProps,a.memoizedState=o.memoizedState,a.updateQueue=o.updateQueue,a.type=o.type,t=o.dependencies,a.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),r=r.sibling;return qe(De,De.current&1|2),n.child}t=t.sibling}a.tail!==null&&Ye()>_i&&(n.flags|=128,i=!0,$i(a,!1),n.lanes=4194304)}else{if(!i)if(t=No(o),t!==null){if(n.flags|=128,i=!0,r=t.updateQueue,r!==null&&(n.updateQueue=r,n.flags|=4),$i(a,!0),a.tail===null&&a.tailMode==="hidden"&&!o.alternate&&!Pe)return dt(n),null}else 2*Ye()-a.renderingStartTime>_i&&r!==1073741824&&(n.flags|=128,i=!0,$i(a,!1),n.lanes=4194304);a.isBackwards?(o.sibling=n.child,n.child=o):(r=a.last,r!==null?r.sibling=o:n.child=o,a.last=o)}return a.tail!==null?(n=a.tail,a.rendering=n,a.tail=n.sibling,a.renderingStartTime=Ye(),n.sibling=null,r=De.current,qe(De,i?r&1|2:r&1),n):(dt(n),null);case 22:case 23:return pp(),i=n.memoizedState!==null,t!==null&&t.memoizedState!==null!==i&&(n.flags|=8192),i&&n.mode&1?qt&1073741824&&(dt(n),n.subtreeFlags&6&&(n.flags|=8192)):dt(n),null;case 24:return null;case 25:return null}throw Error(V(156,n.tag))}function XL(t,n){switch(Yd(n),n.tag){case 1:return St(n.type)&&yo(),t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 3:return Ni(),Me(At),Me(ut),ep(),t=n.flags,t&65536&&!(t&128)?(n.flags=t&-65537|128,n):null;case 5:return Xd(n),null;case 13:if(Me(De),t=n.memoizedState,t!==null&&t.dehydrated!==null){if(n.alternate===null)throw Error(V(340));Si()}return t=n.flags,t&65536?(n.flags=t&-65537|128,n):null;case 19:return Me(De),null;case 4:return Ni(),null;case 10:return Zd(n.type._context),null;case 22:case 23:return pp(),null;case 24:return null;default:return null}}var qa=!1,pt=!1,ev=typeof WeakSet=="function"?WeakSet:Set,ne=null;function gi(t,n){var r=t.ref;if(r!==null)if(typeof r=="function")try{r(null)}catch(i){Ve(t,n,i)}else r.current=null}function Jc(t,n,r){try{r()}catch(i){Ve(t,n,i)}}var eh=!1;function tv(t,n){if(Oc=xo,t=Dg(),Vd(t)){if("selectionStart"in t)var r={start:t.selectionStart,end:t.selectionEnd};else e:{r=(r=t.ownerDocument)&&r.defaultView||window;var i=r.getSelection&&r.getSelection();if(i&&i.rangeCount!==0){r=i.anchorNode;var s=i.anchorOffset,a=i.focusNode;i=i.focusOffset;try{r.nodeType,a.nodeType}catch{r=null;break e}var o=0,c=-1,l=-1,d=0,p=0,u=t,g=null;t:for(;;){for(var f;u!==r||s!==0&&u.nodeType!==3||(c=o+s),u!==a||i!==0&&u.nodeType!==3||(l=o+i),u.nodeType===3&&(o+=u.nodeValue.length),(f=u.firstChild)!==null;)g=u,u=f;for(;;){if(u===t)break t;if(g===r&&++d===s&&(c=o),g===a&&++p===i&&(l=o),(f=u.nextSibling)!==null)break;u=g,g=u.parentNode}u=f}r=c===-1||l===-1?null:{start:c,end:l}}else r=null}r=r||{start:0,end:0}}else r=null;for(Mc={focusedElem:t,selectionRange:r},xo=!1,ne=n;ne!==null;)if(n=ne,t=n.child,(n.subtreeFlags&1028)!==0&&t!==null)t.return=n,ne=t;else for(;ne!==null;){n=ne;try{var L=n.alternate;if(n.flags&1024)switch(n.tag){case 0:case 11:case 15:break;case 1:if(L!==null){var v=L.memoizedProps,y=L.memoizedState,h=n.stateNode,b=h.getSnapshotBeforeUpdate(n.elementType===n.type?v:en(n.type,v),y);h.__reactInternalSnapshotBeforeUpdate=b}break;case 3:var x=n.stateNode.containerInfo;x.nodeType===1?x.textContent="":x.nodeType===9&&x.documentElement&&x.removeChild(x.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(V(163))}}catch(A){Ve(n,n.return,A)}if(t=n.sibling,t!==null){t.return=n.return,ne=t;break}ne=n.return}return L=eh,eh=!1,L}function Ss(t,n,r){var i=n.updateQueue;if(i=i!==null?i.lastEffect:null,i!==null){var s=i=i.next;do{if((s.tag&t)===t){var a=s.destroy;s.destroy=void 0,a!==void 0&&Jc(n,r,a)}s=s.next}while(s!==i)}}function Xo(t,n){if(n=n.updateQueue,n=n!==null?n.lastEffect:null,n!==null){var r=n=n.next;do{if((r.tag&t)===t){var i=r.create;r.destroy=i()}r=r.next}while(r!==n)}}function $c(t){var n=t.ref;if(n!==null){var r=t.stateNode;switch(t.tag){case 5:t=r;break;default:t=r}typeof n=="function"?n(t):n.current=t}}function Rf(t){var n=t.alternate;n!==null&&(t.alternate=null,Rf(n)),t.child=null,t.deletions=null,t.sibling=null,t.tag===5&&(n=t.stateNode,n!==null&&(delete n[hn],delete n[zs],delete n[Ic],delete n[PL],delete n[IL])),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}function Pf(t){return t.tag===5||t.tag===3||t.tag===4}function th(t){e:for(;;){for(;t.sibling===null;){if(t.return===null||Pf(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;t.tag!==5&&t.tag!==6&&t.tag!==18;){if(t.flags&2||t.child===null||t.tag===4)continue e;t.child.return=t,t=t.child}if(!(t.flags&2))return t.stateNode}}function Xc(t,n,r){var i=t.tag;if(i===5||i===6)t=t.stateNode,n?r.nodeType===8?r.parentNode.insertBefore(t,n):r.insertBefore(t,n):(r.nodeType===8?(n=r.parentNode,n.insertBefore(t,r)):(n=r,n.appendChild(t)),r=r._reactRootContainer,r!=null||n.onclick!==null||(n.onclick=bo));else if(i!==4&&(t=t.child,t!==null))for(Xc(t,n,r),t=t.sibling;t!==null;)Xc(t,n,r),t=t.sibling}function ed(t,n,r){var i=t.tag;if(i===5||i===6)t=t.stateNode,n?r.insertBefore(t,n):r.appendChild(t);else if(i!==4&&(t=t.child,t!==null))for(ed(t,n,r),t=t.sibling;t!==null;)ed(t,n,r),t=t.sibling}var at=null,nn=!1;function Gn(t,n,r){for(r=r.child;r!==null;)If(t,n,r),r=r.sibling}function If(t,n,r){if(mn&&typeof mn.onCommitFiberUnmount=="function")try{mn.onCommitFiberUnmount(Yo,r)}catch{}switch(r.tag){case 5:pt||gi(r,n);case 6:var i=at,s=nn;at=null,Gn(t,n,r),at=i,nn=s,at!==null&&(nn?(t=at,r=r.stateNode,t.nodeType===8?t.parentNode.removeChild(r):t.removeChild(r)):at.removeChild(r.stateNode));break;case 18:at!==null&&(nn?(t=at,r=r.stateNode,t.nodeType===8?Dl(t.parentNode,r):t.nodeType===1&&Dl(t,r),Ms(t)):Dl(at,r.stateNode));break;case 4:i=at,s=nn,at=r.stateNode.containerInfo,nn=!0,Gn(t,n,r),at=i,nn=s;break;case 0:case 11:case 14:case 15:if(!pt&&(i=r.updateQueue,i!==null&&(i=i.lastEffect,i!==null))){s=i=i.next;do{var a=s,o=a.destroy;a=a.tag,o!==void 0&&(a&2||a&4)&&Jc(r,n,o),s=s.next}while(s!==i)}Gn(t,n,r);break;case 1:if(!pt&&(gi(r,n),i=r.stateNode,typeof i.componentWillUnmount=="function"))try{i.props=r.memoizedProps,i.state=r.memoizedState,i.componentWillUnmount()}catch(c){Ve(r,n,c)}Gn(t,n,r);break;case 21:Gn(t,n,r);break;case 22:r.mode&1?(pt=(i=pt)||r.memoizedState!==null,Gn(t,n,r),pt=i):Gn(t,n,r);break;default:Gn(t,n,r)}}function nh(t){var n=t.updateQueue;if(n!==null){t.updateQueue=null;var r=t.stateNode;r===null&&(r=t.stateNode=new ev),n.forEach(function(i){var s=dv.bind(null,t,i);r.has(i)||(r.add(i),i.then(s,s))})}}function Xt(t,n){var r=n.deletions;if(r!==null)for(var i=0;i<r.length;i++){var s=r[i];try{var a=t,o=n,c=o;e:for(;c!==null;){switch(c.tag){case 5:at=c.stateNode,nn=!1;break e;case 3:at=c.stateNode.containerInfo,nn=!0;break e;case 4:at=c.stateNode.containerInfo,nn=!0;break e}c=c.return}if(at===null)throw Error(V(160));If(a,o,s),at=null,nn=!1;var l=s.alternate;l!==null&&(l.return=null),s.return=null}catch(d){Ve(s,n,d)}}if(n.subtreeFlags&12854)for(n=n.child;n!==null;)Df(n,t),n=n.sibling}function Df(t,n){var r=t.alternate,i=t.flags;switch(t.tag){case 0:case 11:case 14:case 15:if(Xt(n,t),pn(t),i&4){try{Ss(3,t,t.return),Xo(3,t)}catch(v){Ve(t,t.return,v)}try{Ss(5,t,t.return)}catch(v){Ve(t,t.return,v)}}break;case 1:Xt(n,t),pn(t),i&512&&r!==null&&gi(r,r.return);break;case 5:if(Xt(n,t),pn(t),i&512&&r!==null&&gi(r,r.return),t.flags&32){var s=t.stateNode;try{Ts(s,"")}catch(v){Ve(t,t.return,v)}}if(i&4&&(s=t.stateNode,s!=null)){var a=t.memoizedProps,o=r!==null?r.memoizedProps:a,c=t.type,l=t.updateQueue;if(t.updateQueue=null,l!==null)try{c==="input"&&a.type==="radio"&&a.name!=null&&ag(s,a),kc(c,o);var d=kc(c,a);for(o=0;o<l.length;o+=2){var p=l[o],u=l[o+1];p==="style"?pg(s,u):p==="dangerouslySetInnerHTML"?cg(s,u):p==="children"?Ts(s,u):_d(s,p,u,d)}switch(c){case"input":vc(s,a);break;case"textarea":og(s,a);break;case"select":var g=s._wrapperState.wasMultiple;s._wrapperState.wasMultiple=!!a.multiple;var f=a.value;f!=null?xi(s,!!a.multiple,f,!1):g!==!!a.multiple&&(a.defaultValue!=null?xi(s,!!a.multiple,a.defaultValue,!0):xi(s,!!a.multiple,a.multiple?[]:"",!1))}s[zs]=a}catch(v){Ve(t,t.return,v)}}break;case 6:if(Xt(n,t),pn(t),i&4){if(t.stateNode===null)throw Error(V(162));s=t.stateNode,a=t.memoizedProps;try{s.nodeValue=a}catch(v){Ve(t,t.return,v)}}break;case 3:if(Xt(n,t),pn(t),i&4&&r!==null&&r.memoizedState.isDehydrated)try{Ms(n.containerInfo)}catch(v){Ve(t,t.return,v)}break;case 4:Xt(n,t),pn(t);break;case 13:Xt(n,t),pn(t),s=t.child,s.flags&8192&&(a=s.memoizedState!==null,s.stateNode.isHidden=a,!a||s.alternate!==null&&s.alternate.memoizedState!==null||(cp=Ye())),i&4&&nh(t);break;case 22:if(p=r!==null&&r.memoizedState!==null,t.mode&1?(pt=(d=pt)||p,Xt(n,t),pt=d):Xt(n,t),pn(t),i&8192){if(d=t.memoizedState!==null,(t.stateNode.isHidden=d)&&!p&&t.mode&1)for(ne=t,p=t.child;p!==null;){for(u=ne=p;ne!==null;){switch(g=ne,f=g.child,g.tag){case 0:case 11:case 14:case 15:Ss(4,g,g.return);break;case 1:gi(g,g.return);var L=g.stateNode;if(typeof L.componentWillUnmount=="function"){i=g,r=g.return;try{n=i,L.props=n.memoizedProps,L.state=n.memoizedState,L.componentWillUnmount()}catch(v){Ve(i,r,v)}}break;case 5:gi(g,g.return);break;case 22:if(g.memoizedState!==null){ih(u);continue}}f!==null?(f.return=g,ne=f):ih(u)}p=p.sibling}e:for(p=null,u=t;;){if(u.tag===5){if(p===null){p=u;try{s=u.stateNode,d?(a=s.style,typeof a.setProperty=="function"?a.setProperty("display","none","important"):a.display="none"):(c=u.stateNode,l=u.memoizedProps.style,o=l!=null&&l.hasOwnProperty("display")?l.display:null,c.style.display=dg("display",o))}catch(v){Ve(t,t.return,v)}}}else if(u.tag===6){if(p===null)try{u.stateNode.nodeValue=d?"":u.memoizedProps}catch(v){Ve(t,t.return,v)}}else if((u.tag!==22&&u.tag!==23||u.memoizedState===null||u===t)&&u.child!==null){u.child.return=u,u=u.child;continue}if(u===t)break e;for(;u.sibling===null;){if(u.return===null||u.return===t)break e;p===u&&(p=null),u=u.return}p===u&&(p=null),u.sibling.return=u.return,u=u.sibling}}break;case 19:Xt(n,t),pn(t),i&4&&nh(t);break;case 21:break;default:Xt(n,t),pn(t)}}function pn(t){var n=t.flags;if(n&2){try{e:{for(var r=t.return;r!==null;){if(Pf(r)){var i=r;break e}r=r.return}throw Error(V(160))}switch(i.tag){case 5:var s=i.stateNode;i.flags&32&&(Ts(s,""),i.flags&=-33);var a=th(t);ed(t,a,s);break;case 3:case 4:var o=i.stateNode.containerInfo,c=th(t);Xc(t,c,o);break;default:throw Error(V(161))}}catch(l){Ve(t,t.return,l)}t.flags&=-3}n&4096&&(t.flags&=-4097)}function nv(t,n,r){ne=t,zf(t)}function zf(t,n,r){for(var i=(t.mode&1)!==0;ne!==null;){var s=ne,a=s.child;if(s.tag===22&&i){var o=s.memoizedState!==null||qa;if(!o){var c=s.alternate,l=c!==null&&c.memoizedState!==null||pt;c=qa;var d=pt;if(qa=o,(pt=l)&&!d)for(ne=s;ne!==null;)o=ne,l=o.child,o.tag===22&&o.memoizedState!==null?sh(s):l!==null?(l.return=o,ne=l):sh(s);for(;a!==null;)ne=a,zf(a),a=a.sibling;ne=s,qa=c,pt=d}rh(t)}else s.subtreeFlags&8772&&a!==null?(a.return=s,ne=a):rh(t)}}function rh(t){for(;ne!==null;){var n=ne;if(n.flags&8772){var r=n.alternate;try{if(n.flags&8772)switch(n.tag){case 0:case 11:case 15:pt||Xo(5,n);break;case 1:var i=n.stateNode;if(n.flags&4&&!pt)if(r===null)i.componentDidMount();else{var s=n.elementType===n.type?r.memoizedProps:en(n.type,r.memoizedProps);i.componentDidUpdate(s,r.memoizedState,i.__reactInternalSnapshotBeforeUpdate)}var a=n.updateQueue;a!==null&&Bu(n,a,i);break;case 3:var o=n.updateQueue;if(o!==null){if(r=null,n.child!==null)switch(n.child.tag){case 5:r=n.child.stateNode;break;case 1:r=n.child.stateNode}Bu(n,o,r)}break;case 5:var c=n.stateNode;if(r===null&&n.flags&4){r=c;var l=n.memoizedProps;switch(n.type){case"button":case"input":case"select":case"textarea":l.autoFocus&&r.focus();break;case"img":l.src&&(r.src=l.src)}}break;case 6:break;case 4:break;case 12:break;case 13:if(n.memoizedState===null){var d=n.alternate;if(d!==null){var p=d.memoizedState;if(p!==null){var u=p.dehydrated;u!==null&&Ms(u)}}}break;case 19:case 17:case 21:case 22:case 23:case 25:break;default:throw Error(V(163))}pt||n.flags&512&&$c(n)}catch(g){Ve(n,n.return,g)}}if(n===t){ne=null;break}if(r=n.sibling,r!==null){r.return=n.return,ne=r;break}ne=n.return}}function ih(t){for(;ne!==null;){var n=ne;if(n===t){ne=null;break}var r=n.sibling;if(r!==null){r.return=n.return,ne=r;break}ne=n.return}}function sh(t){for(;ne!==null;){var n=ne;try{switch(n.tag){case 0:case 11:case 15:var r=n.return;try{Xo(4,n)}catch(l){Ve(n,r,l)}break;case 1:var i=n.stateNode;if(typeof i.componentDidMount=="function"){var s=n.return;try{i.componentDidMount()}catch(l){Ve(n,s,l)}}var a=n.return;try{$c(n)}catch(l){Ve(n,a,l)}break;case 5:var o=n.return;try{$c(n)}catch(l){Ve(n,o,l)}}}catch(l){Ve(n,n.return,l)}if(n===t){ne=null;break}var c=n.sibling;if(c!==null){c.return=n.return,ne=c;break}ne=n.return}}var rv=Math.ceil,To=Un.ReactCurrentDispatcher,op=Un.ReactCurrentOwner,Gt=Un.ReactCurrentBatchConfig,Ee=0,rt=null,We=null,ot=0,qt=0,fi=xr(0),et=0,Gs=null,Rr=0,el=0,lp=0,Es=null,wt=null,cp=0,_i=1/0,Sn=null,qo=!1,td=null,lr=null,Fa=!1,er=null,Fo=0,Ns=0,nd=null,so=-1,ao=0;function xt(){return Ee&6?Ye():so!==-1?so:so=Ye()}function cr(t){return t.mode&1?Ee&2&&ot!==0?ot&-ot:zL.transition!==null?(ao===0&&(ao=wg()),ao):(t=Ce,t!==0||(t=window.event,t=t===void 0?16:_g(t.type)),t):1}function on(t,n,r,i){if(50<Ns)throw Ns=0,nd=null,Error(V(185));sa(t,r,i),(!(Ee&2)||t!==rt)&&(t===rt&&(!(Ee&2)&&(el|=r),et===4&&$n(t,ot)),Et(t,i),r===1&&Ee===0&&!(n.mode&1)&&(_i=Ye()+500,Ko&&Lr()))}function Et(t,n){var r=t.callbackNode;z0(t,n);var i=fo(t,t===rt?ot:0);if(i===0)r!==null&&mu(r),t.callbackNode=null,t.callbackPriority=0;else if(n=i&-i,t.callbackPriority!==n){if(r!=null&&mu(r),n===1)t.tag===0?DL(ah.bind(null,t)):Zg(ah.bind(null,t)),ML(function(){!(Ee&6)&&Lr()}),r=null;else{switch(kg(i)){case 1:r=Md;break;case 4:r=yg;break;case 16:r=go;break;case 536870912:r=jg;break;default:r=go}r=Qf(r,Bf.bind(null,t))}t.callbackPriority=n,t.callbackNode=r}}function Bf(t,n){if(so=-1,ao=0,Ee&6)throw Error(V(327));var r=t.callbackNode;if(ji()&&t.callbackNode!==r)return null;var i=fo(t,t===rt?ot:0);if(i===0)return null;if(i&30||i&t.expiredLanes||n)n=Oo(t,i);else{n=i;var s=Ee;Ee|=2;var a=Vf();(rt!==t||ot!==n)&&(Sn=null,_i=Ye()+500,Cr(t,n));do try{av();break}catch(c){Uf(t,c)}while(!0);Qd(),To.current=a,Ee=s,We!==null?n=0:(rt=null,ot=0,n=et)}if(n!==0){if(n===2&&(s=Cc(t),s!==0&&(i=s,n=rd(t,s))),n===1)throw r=Gs,Cr(t,0),$n(t,i),Et(t,Ye()),r;if(n===6)$n(t,i);else{if(s=t.current.alternate,!(i&30)&&!iv(s)&&(n=Oo(t,i),n===2&&(a=Cc(t),a!==0&&(i=a,n=rd(t,a))),n===1))throw r=Gs,Cr(t,0),$n(t,i),Et(t,Ye()),r;switch(t.finishedWork=s,t.finishedLanes=i,n){case 0:case 1:throw Error(V(345));case 2:kr(t,wt,Sn);break;case 3:if($n(t,i),(i&130023424)===i&&(n=cp+500-Ye(),10<n)){if(fo(t,0)!==0)break;if(s=t.suspendedLanes,(s&i)!==i){xt(),t.pingedLanes|=t.suspendedLanes&s;break}t.timeoutHandle=Pc(kr.bind(null,t,wt,Sn),n);break}kr(t,wt,Sn);break;case 4:if($n(t,i),(i&4194240)===i)break;for(n=t.eventTimes,s=-1;0<i;){var o=31-an(i);a=1<<o,o=n[o],o>s&&(s=o),i&=~a}if(i=s,i=Ye()-i,i=(120>i?120:480>i?480:1080>i?1080:1920>i?1920:3e3>i?3e3:4320>i?4320:1960*rv(i/1960))-i,10<i){t.timeoutHandle=Pc(kr.bind(null,t,wt,Sn),i);break}kr(t,wt,Sn);break;case 5:kr(t,wt,Sn);break;default:throw Error(V(329))}}}return Et(t,Ye()),t.callbackNode===r?Bf.bind(null,t):null}function rd(t,n){var r=Es;return t.current.memoizedState.isDehydrated&&(Cr(t,n).flags|=256),t=Oo(t,n),t!==2&&(n=wt,wt=r,n!==null&&id(n)),t}function id(t){wt===null?wt=t:wt.push.apply(wt,t)}function iv(t){for(var n=t;;){if(n.flags&16384){var r=n.updateQueue;if(r!==null&&(r=r.stores,r!==null))for(var i=0;i<r.length;i++){var s=r[i],a=s.getSnapshot;s=s.value;try{if(!ln(a(),s))return!1}catch{return!1}}}if(r=n.child,n.subtreeFlags&16384&&r!==null)r.return=n,n=r;else{if(n===t)break;for(;n.sibling===null;){if(n.return===null||n.return===t)return!0;n=n.return}n.sibling.return=n.return,n=n.sibling}}return!0}function $n(t,n){for(n&=~lp,n&=~el,t.suspendedLanes|=n,t.pingedLanes&=~n,t=t.expirationTimes;0<n;){var r=31-an(n),i=1<<r;t[r]=-1,n&=~i}}function ah(t){if(Ee&6)throw Error(V(327));ji();var n=fo(t,0);if(!(n&1))return Et(t,Ye()),null;var r=Oo(t,n);if(t.tag!==0&&r===2){var i=Cc(t);i!==0&&(n=i,r=rd(t,i))}if(r===1)throw r=Gs,Cr(t,0),$n(t,n),Et(t,Ye()),r;if(r===6)throw Error(V(345));return t.finishedWork=t.current.alternate,t.finishedLanes=n,kr(t,wt,Sn),Et(t,Ye()),null}function dp(t,n){var r=Ee;Ee|=1;try{return t(n)}finally{Ee=r,Ee===0&&(_i=Ye()+500,Ko&&Lr())}}function Pr(t){er!==null&&er.tag===0&&!(Ee&6)&&ji();var n=Ee;Ee|=1;var r=Gt.transition,i=Ce;try{if(Gt.transition=null,Ce=1,t)return t()}finally{Ce=i,Gt.transition=r,Ee=n,!(Ee&6)&&Lr()}}function pp(){qt=fi.current,Me(fi)}function Cr(t,n){t.finishedWork=null,t.finishedLanes=0;var r=t.timeoutHandle;if(r!==-1&&(t.timeoutHandle=-1,OL(r)),We!==null)for(r=We.return;r!==null;){var i=r;switch(Yd(i),i.tag){case 1:i=i.type.childContextTypes,i!=null&&yo();break;case 3:Ni(),Me(At),Me(ut),ep();break;case 5:Xd(i);break;case 4:Ni();break;case 13:Me(De);break;case 19:Me(De);break;case 10:Zd(i.type._context);break;case 22:case 23:pp()}r=r.return}if(rt=t,We=t=dr(t.current,null),ot=qt=n,et=0,Gs=null,lp=el=Rr=0,wt=Es=null,Sr!==null){for(n=0;n<Sr.length;n++)if(r=Sr[n],i=r.interleaved,i!==null){r.interleaved=null;var s=i.next,a=r.pending;if(a!==null){var o=a.next;a.next=s,i.next=o}r.pending=i}Sr=null}return t}function Uf(t,n){do{var r=We;try{if(Qd(),no.current=_o,Co){for(var i=ze.memoizedState;i!==null;){var s=i.queue;s!==null&&(s.pending=null),i=i.next}Co=!1}if(Mr=0,nt=Xe=ze=null,As=!1,Vs=0,op.current=null,r===null||r.return===null){et=1,Gs=n,We=null;break}e:{var a=t,o=r.return,c=r,l=n;if(n=ot,c.flags|=32768,l!==null&&typeof l=="object"&&typeof l.then=="function"){var d=l,p=c,u=p.tag;if(!(p.mode&1)&&(u===0||u===11||u===15)){var g=p.alternate;g?(p.updateQueue=g.updateQueue,p.memoizedState=g.memoizedState,p.lanes=g.lanes):(p.updateQueue=null,p.memoizedState=null)}var f=Wu(o);if(f!==null){f.flags&=-257,Qu(f,o,c,a,n),f.mode&1&&Gu(a,d,n),n=f,l=d;var L=n.updateQueue;if(L===null){var v=new Set;v.add(l),n.updateQueue=v}else L.add(l);break e}else{if(!(n&1)){Gu(a,d,n),up();break e}l=Error(V(426))}}else if(Pe&&c.mode&1){var y=Wu(o);if(y!==null){!(y.flags&65536)&&(y.flags|=256),Qu(y,o,c,a,n),Gd(Ci(l,c));break e}}a=l=Ci(l,c),et!==4&&(et=2),Es===null?Es=[a]:Es.push(a),a=o;do{switch(a.tag){case 3:a.flags|=65536,n&=-n,a.lanes|=n;var h=Af(a,l,n);zu(a,h);break e;case 1:c=l;var b=a.type,x=a.stateNode;if(!(a.flags&128)&&(typeof b.getDerivedStateFromError=="function"||x!==null&&typeof x.componentDidCatch=="function"&&(lr===null||!lr.has(x)))){a.flags|=65536,n&=-n,a.lanes|=n;var A=Sf(a,c,n);zu(a,A);break e}}a=a.return}while(a!==null)}Yf(r)}catch(w){n=w,We===r&&r!==null&&(We=r=r.return);continue}break}while(!0)}function Vf(){var t=To.current;return To.current=_o,t===null?_o:t}function up(){(et===0||et===3||et===2)&&(et=4),rt===null||!(Rr&268435455)&&!(el&268435455)||$n(rt,ot)}function Oo(t,n){var r=Ee;Ee|=2;var i=Vf();(rt!==t||ot!==n)&&(Sn=null,Cr(t,n));do try{sv();break}catch(s){Uf(t,s)}while(!0);if(Qd(),Ee=r,To.current=i,We!==null)throw Error(V(261));return rt=null,ot=0,et}function sv(){for(;We!==null;)Hf(We)}function av(){for(;We!==null&&!T0();)Hf(We)}function Hf(t){var n=Wf(t.alternate,t,qt);t.memoizedProps=t.pendingProps,n===null?Yf(t):We=n,op.current=null}function Yf(t){var n=t;do{var r=n.alternate;if(t=n.return,n.flags&32768){if(r=XL(r,n),r!==null){r.flags&=32767,We=r;return}if(t!==null)t.flags|=32768,t.subtreeFlags=0,t.deletions=null;else{et=6,We=null;return}}else if(r=$L(r,n,qt),r!==null){We=r;return}if(n=n.sibling,n!==null){We=n;return}We=n=t}while(n!==null);et===0&&(et=5)}function kr(t,n,r){var i=Ce,s=Gt.transition;try{Gt.transition=null,Ce=1,ov(t,n,r,i)}finally{Gt.transition=s,Ce=i}return null}function ov(t,n,r,i){do ji();while(er!==null);if(Ee&6)throw Error(V(327));r=t.finishedWork;var s=t.finishedLanes;if(r===null)return null;if(t.finishedWork=null,t.finishedLanes=0,r===t.current)throw Error(V(177));t.callbackNode=null,t.callbackPriority=0;var a=r.lanes|r.childLanes;if(B0(t,a),t===rt&&(We=rt=null,ot=0),!(r.subtreeFlags&2064)&&!(r.flags&2064)||Fa||(Fa=!0,Qf(go,function(){return ji(),null})),a=(r.flags&15990)!==0,r.subtreeFlags&15990||a){a=Gt.transition,Gt.transition=null;var o=Ce;Ce=1;var c=Ee;Ee|=4,op.current=null,tv(t,r),Df(r,t),EL(Mc),xo=!!Oc,Mc=Oc=null,t.current=r,nv(r),q0(),Ee=c,Ce=o,Gt.transition=a}else t.current=r;if(Fa&&(Fa=!1,er=t,Fo=s),a=t.pendingLanes,a===0&&(lr=null),M0(r.stateNode),Et(t,Ye()),n!==null)for(i=t.onRecoverableError,r=0;r<n.length;r++)s=n[r],i(s.value,{componentStack:s.stack,digest:s.digest});if(qo)throw qo=!1,t=td,td=null,t;return Fo&1&&t.tag!==0&&ji(),a=t.pendingLanes,a&1?t===nd?Ns++:(Ns=0,nd=t):Ns=0,Lr(),null}function ji(){if(er!==null){var t=kg(Fo),n=Gt.transition,r=Ce;try{if(Gt.transition=null,Ce=16>t?16:t,er===null)var i=!1;else{if(t=er,er=null,Fo=0,Ee&6)throw Error(V(331));var s=Ee;for(Ee|=4,ne=t.current;ne!==null;){var a=ne,o=a.child;if(ne.flags&16){var c=a.deletions;if(c!==null){for(var l=0;l<c.length;l++){var d=c[l];for(ne=d;ne!==null;){var p=ne;switch(p.tag){case 0:case 11:case 15:Ss(8,p,a)}var u=p.child;if(u!==null)u.return=p,ne=u;else for(;ne!==null;){p=ne;var g=p.sibling,f=p.return;if(Rf(p),p===d){ne=null;break}if(g!==null){g.return=f,ne=g;break}ne=f}}}var L=a.alternate;if(L!==null){var v=L.child;if(v!==null){L.child=null;do{var y=v.sibling;v.sibling=null,v=y}while(v!==null)}}ne=a}}if(a.subtreeFlags&2064&&o!==null)o.return=a,ne=o;else e:for(;ne!==null;){if(a=ne,a.flags&2048)switch(a.tag){case 0:case 11:case 15:Ss(9,a,a.return)}var h=a.sibling;if(h!==null){h.return=a.return,ne=h;break e}ne=a.return}}var b=t.current;for(ne=b;ne!==null;){o=ne;var x=o.child;if(o.subtreeFlags&2064&&x!==null)x.return=o,ne=x;else e:for(o=b;ne!==null;){if(c=ne,c.flags&2048)try{switch(c.tag){case 0:case 11:case 15:Xo(9,c)}}catch(w){Ve(c,c.return,w)}if(c===o){ne=null;break e}var A=c.sibling;if(A!==null){A.return=c.return,ne=A;break e}ne=c.return}}if(Ee=s,Lr(),mn&&typeof mn.onPostCommitFiberRoot=="function")try{mn.onPostCommitFiberRoot(Yo,t)}catch{}i=!0}return i}finally{Ce=r,Gt.transition=n}}return!1}function oh(t,n,r){n=Ci(r,n),n=Af(t,n,1),t=or(t,n,1),n=xt(),t!==null&&(sa(t,1,n),Et(t,n))}function Ve(t,n,r){if(t.tag===3)oh(t,t,r);else for(;n!==null;){if(n.tag===3){oh(n,t,r);break}else if(n.tag===1){var i=n.stateNode;if(typeof n.type.getDerivedStateFromError=="function"||typeof i.componentDidCatch=="function"&&(lr===null||!lr.has(i))){t=Ci(r,t),t=Sf(n,t,1),n=or(n,t,1),t=xt(),n!==null&&(sa(n,1,t),Et(n,t));break}}n=n.return}}function lv(t,n,r){var i=t.pingCache;i!==null&&i.delete(n),n=xt(),t.pingedLanes|=t.suspendedLanes&r,rt===t&&(ot&r)===r&&(et===4||et===3&&(ot&130023424)===ot&&500>Ye()-cp?Cr(t,0):lp|=r),Et(t,n)}function Gf(t,n){n===0&&(t.mode&1?(n=wa,wa<<=1,!(wa&130023424)&&(wa=4194304)):n=1);var r=xt();t=Rn(t,n),t!==null&&(sa(t,n,r),Et(t,r))}function cv(t){var n=t.memoizedState,r=0;n!==null&&(r=n.retryLane),Gf(t,r)}function dv(t,n){var r=0;switch(t.tag){case 13:var i=t.stateNode,s=t.memoizedState;s!==null&&(r=s.retryLane);break;case 19:i=t.stateNode;break;default:throw Error(V(314))}i!==null&&i.delete(n),Gf(t,r)}var Wf;Wf=function(t,n,r){if(t!==null)if(t.memoizedProps!==n.pendingProps||At.current)kt=!0;else{if(!(t.lanes&r)&&!(n.flags&128))return kt=!1,JL(t,n,r);kt=!!(t.flags&131072)}else kt=!1,Pe&&n.flags&1048576&&Kg(n,ko,n.index);switch(n.lanes=0,n.tag){case 2:var i=n.type;io(t,n),t=n.pendingProps;var s=Ai(n,ut.current);yi(n,r),s=np(null,n,i,t,s,r);var a=rp();return n.flags|=1,typeof s=="object"&&s!==null&&typeof s.render=="function"&&s.$$typeof===void 0?(n.tag=1,n.memoizedState=null,n.updateQueue=null,St(i)?(a=!0,jo(n)):a=!1,n.memoizedState=s.state!==null&&s.state!==void 0?s.state:null,Jd(n),s.updater=$o,n.stateNode=s,s._reactInternals=n,Hc(n,i,t,r),n=Wc(null,n,i,!0,a,r)):(n.tag=0,Pe&&a&&Hd(n),gt(null,n,s,r),n=n.child),n;case 16:i=n.elementType;e:{switch(io(t,n),t=n.pendingProps,s=i._init,i=s(i._payload),n.type=i,s=n.tag=uv(i),t=en(i,t),s){case 0:n=Gc(null,n,i,t,r);break e;case 1:n=Ju(null,n,i,t,r);break e;case 11:n=Zu(null,n,i,t,r);break e;case 14:n=Ku(null,n,i,en(i.type,t),r);break e}throw Error(V(306,i,""))}return n;case 0:return i=n.type,s=n.pendingProps,s=n.elementType===i?s:en(i,s),Gc(t,n,i,s,r);case 1:return i=n.type,s=n.pendingProps,s=n.elementType===i?s:en(i,s),Ju(t,n,i,s,r);case 3:e:{if(_f(n),t===null)throw Error(V(387));i=n.pendingProps,a=n.memoizedState,s=a.element,nf(t,n),Eo(n,i,null,r);var o=n.memoizedState;if(i=o.element,a.isDehydrated)if(a={element:i,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},n.updateQueue.baseState=a,n.memoizedState=a,n.flags&256){s=Ci(Error(V(423)),n),n=$u(t,n,i,r,s);break e}else if(i!==s){s=Ci(Error(V(424)),n),n=$u(t,n,i,r,s);break e}else for(Ft=ar(n.stateNode.containerInfo.firstChild),Ot=n,Pe=!0,sn=null,r=ef(n,null,i,r),n.child=r;r;)r.flags=r.flags&-3|4096,r=r.sibling;else{if(Si(),i===s){n=Pn(t,n,r);break e}gt(t,n,i,r)}n=n.child}return n;case 5:return rf(n),t===null&&Bc(n),i=n.type,s=n.pendingProps,a=t!==null?t.memoizedProps:null,o=s.children,Rc(i,s)?o=null:a!==null&&Rc(i,a)&&(n.flags|=32),Cf(t,n),gt(t,n,o,r),n.child;case 6:return t===null&&Bc(n),null;case 13:return Tf(t,n,r);case 4:return $d(n,n.stateNode.containerInfo),i=n.pendingProps,t===null?n.child=Ei(n,null,i,r):gt(t,n,i,r),n.child;case 11:return i=n.type,s=n.pendingProps,s=n.elementType===i?s:en(i,s),Zu(t,n,i,s,r);
vendor: 5,879 bytes, line 41
41case 7:return gt(t,n,n.pendingProps,r),n.child;case 8:return gt(t,n,n.pendingProps.children,r),n.child;case 12:return gt(t,n,n.pendingProps.children,r),n.child;case 10:e:{if(i=n.type._context,s=n.pendingProps,a=n.memoizedProps,o=s.value,qe(Ao,i._currentValue),i._currentValue=o,a!==null)if(ln(a.value,o)){if(a.children===s.children&&!At.current){n=Pn(t,n,r);break e}}else for(a=n.child,a!==null&&(a.return=n);a!==null;){var c=a.dependencies;if(c!==null){o=a.child;for(var l=c.firstContext;l!==null;){if(l.context===i){if(a.tag===1){l=qn(-1,r&-r),l.tag=2;var d=a.updateQueue;if(d!==null){d=d.shared;var p=d.pending;p===null?l.next=l:(l.next=p.next,p.next=l),d.pending=l}}a.lanes|=r,l=a.alternate,l!==null&&(l.lanes|=r),Uc(a.return,r,n),c.lanes|=r;break}l=l.next}}else if(a.tag===10)o=a.type===n.type?null:a.child;else if(a.tag===18){if(o=a.return,o===null)throw Error(V(341));o.lanes|=r,c=o.alternate,c!==null&&(c.lanes|=r),Uc(o,r,n),o=a.sibling}else o=a.child;if(o!==null)o.return=a;else for(o=a;o!==null;){if(o===n){o=null;break}if(a=o.sibling,a!==null){a.return=o.return,o=a;break}o=o.return}a=o}gt(t,n,s.children,r),n=n.child}return n;case 9:return s=n.type,i=n.pendingProps.children,yi(n,r),s=Wt(s),i=i(s),n.flags|=1,gt(t,n,i,r),n.child;case 14:return i=n.type,s=en(i,n.pendingProps),s=en(i.type,s),Ku(t,n,i,s,r);case 15:return Ef(t,n,n.type,n.pendingProps,r);case 17:return i=n.type,s=n.pendingProps,s=n.elementType===i?s:en(i,s),io(t,n),n.tag=1,St(i)?(t=!0,jo(n)):t=!1,yi(n,r),kf(n,i,s),Hc(n,i,s,r),Wc(null,n,i,!0,t,r);case 19:return qf(t,n,r);case 22:return Nf(t,n,r)}throw Error(V(156,n.tag))};function Qf(t,n){return bg(t,n)}function pv(t,n,r,i){this.tag=t,this.key=r,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=n,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=i,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Vt(t,n,r,i){return new pv(t,n,r,i)}function hp(t){return t=t.prototype,!(!t||!t.isReactComponent)}function uv(t){if(typeof t=="function")return hp(t)?1:0;if(t!=null){if(t=t.$$typeof,t===qd)return 11;if(t===Fd)return 14}return 2}function dr(t,n){var r=t.alternate;return r===null?(r=Vt(t.tag,n,t.key,t.mode),r.elementType=t.elementType,r.type=t.type,r.stateNode=t.stateNode,r.alternate=t,t.alternate=r):(r.pendingProps=n,r.type=t.type,r.flags=0,r.subtreeFlags=0,r.deletions=null),r.flags=t.flags&14680064,r.childLanes=t.childLanes,r.lanes=t.lanes,r.child=t.child,r.memoizedProps=t.memoizedProps,r.memoizedState=t.memoizedState,r.updateQueue=t.updateQueue,n=t.dependencies,r.dependencies=n===null?null:{lanes:n.lanes,firstContext:n.firstContext},r.sibling=t.sibling,r.index=t.index,r.ref=t.ref,r}function oo(t,n,r,i,s,a){var o=2;if(i=t,typeof t=="function")hp(t)&&(o=1);else if(typeof t=="string")o=5;else e:switch(t){case ai:return _r(r.children,s,a,n);case Td:o=8,s|=8;break;case mc:return t=Vt(12,r,n,s|2),t.elementType=mc,t.lanes=a,t;case gc:return t=Vt(13,r,n,s),t.elementType=gc,t.lanes=a,t;case fc:return t=Vt(19,r,n,s),t.elementType=fc,t.lanes=a,t;case rg:return tl(r,s,a,n);default:if(typeof t=="object"&&t!==null)switch(t.$$typeof){case tg:o=10;break e;case ng:o=9;break e;case qd:o=11;break e;case Fd:o=14;break e;case Zn:o=16,i=null;break e}throw Error(V(130,t==null?t:typeof t,""))}return n=Vt(o,r,n,s),n.elementType=t,n.type=i,n.lanes=a,n}function _r(t,n,r,i){return t=Vt(7,t,i,n),t.lanes=r,t}function tl(t,n,r,i){return t=Vt(22,t,i,n),t.elementType=rg,t.lanes=r,t.stateNode={isHidden:!1},t}function Wl(t,n,r){return t=Vt(6,t,null,n),t.lanes=r,t}function Ql(t,n,r){return n=Vt(4,t.children!==null?t.children:[],t.key,n),n.lanes=r,n.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},n}function hv(t,n,r,i,s){this.tag=n,this.containerInfo=t,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Nl(0),this.expirationTimes=Nl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Nl(0),this.identifierPrefix=i,this.onRecoverableError=s,this.mutableSourceEagerHydrationData=null}function mp(t,n,r,i,s,a,o,c,l){return t=new hv(t,n,r,c,l),n===1?(n=1,a===!0&&(n|=8)):n=0,a=Vt(3,null,null,n),t.current=a,a.stateNode=t,a.memoizedState={element:i,isDehydrated:r,cache:null,transitions:null,pendingSuspenseBoundaries:null},Jd(a),t}function mv(t,n,r){var i=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:si,key:i==null?null:""+i,children:t,containerInfo:n,implementation:r}}function Zf(t){if(!t)return mr;t=t._reactInternals;e:{if(Yr(t)!==t||t.tag!==1)throw Error(V(170));var n=t;do{switch(n.tag){case 3:n=n.stateNode.context;break e;case 1:if(St(n.type)){n=n.stateNode.__reactInternalMemoizedMergedChildContext;break e}}n=n.return}while(n!==null);throw Error(V(171))}if(t.tag===1){var r=t.type;if(St(r))return Qg(t,r,n)}return n}function Kf(t,n,r,i,s,a,o,c,l){return t=mp(r,i,!0,t,s,a,o,c,l),t.context=Zf(null),r=t.current,i=xt(),s=cr(r),a=qn(i,s),a.callback=n??null,or(r,a,s),t.current.lanes=s,sa(t,s,i),Et(t,i),t}function nl(t,n,r,i){var s=n.current,a=xt(),o=cr(s);return r=Zf(r),n.context===null?n.context=r:n.pendingContext=r,n=qn(a,o),n.payload={element:t},i=i===void 0?null:i,i!==null&&(n.callback=i),t=or(s,n,o),t!==null&&(on(t,s,o,a),to(t,s,o)),o}function Mo(t){if(t=t.current,!t.child)return null;switch(t.child.tag){case 5:return t.child.stateNode;default:return t.child.stateNode}}function lh(t,n){if(t=t.memoizedState,t!==null&&t.dehydrated!==null){var r=t.retryLane;t.retryLane=r!==0&&r<n?r:n}}function gp(t,n){lh(t,n),(t=t.alternate)&&lh(t,n)}
vendor: 4,803 bytes, line 41
41function gv(){return null}var Jf=typeof reportError=="function"?reportError:function(t){console.error(t)};function fp(t){this._internalRoot=t}rl.prototype.render=fp.prototype.render=function(t){var n=this._internalRoot;if(n===null)throw Error(V(409));nl(t,n,null,null)};rl.prototype.unmount=fp.prototype.unmount=function(){var t=this._internalRoot;if(t!==null){this._internalRoot=null;var n=t.containerInfo;Pr(function(){nl(null,t,null,null)}),n[Mn]=null}};function rl(t){this._internalRoot=t}rl.prototype.unstable_scheduleHydration=function(t){if(t){var n=Eg();t={blockedOn:null,target:t,priority:n};for(var r=0;r<Jn.length&&n!==0&&n<Jn[r].priority;r++);Jn.splice(r,0,t),r===0&&Cg(t)}};function xp(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)}function il(t){return!(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11&&(t.nodeType!==8||t.nodeValue!==" react-mount-point-unstable "))}function ch(){}function fv(t,n,r,i,s){if(s){if(typeof i=="function"){var a=i;i=function(){var d=Mo(o);a.call(d)}}var o=Kf(n,i,t,0,null,!1,!1,"",ch);return t._reactRootContainer=o,t[Mn]=o.current,Is(t.nodeType===8?t.parentNode:t),Pr(),o}for(;s=t.lastChild;)t.removeChild(s);if(typeof i=="function"){var c=i;i=function(){var d=Mo(l);c.call(d)}}var l=mp(t,0,!1,null,null,!1,!1,"",ch);return t._reactRootContainer=l,t[Mn]=l.current,Is(t.nodeType===8?t.parentNode:t),Pr(function(){nl(n,l,r,i)}),l}function sl(t,n,r,i,s){var a=r._reactRootContainer;if(a){var o=a;if(typeof s=="function"){var c=s;s=function(){var l=Mo(o);c.call(l)}}nl(n,o,t,s)}else o=fv(r,n,t,s,i);return Mo(o)}Ag=function(t){switch(t.tag){case 3:var n=t.stateNode;if(n.current.memoizedState.isDehydrated){var r=ms(n.pendingLanes);r!==0&&(Rd(n,r|1),Et(n,Ye()),!(Ee&6)&&(_i=Ye()+500,Lr()))}break;case 13:Pr(function(){var i=Rn(t,1);if(i!==null){var s=xt();on(i,t,1,s)}}),gp(t,1)}};Pd=function(t){if(t.tag===13){var n=Rn(t,134217728);if(n!==null){var r=xt();on(n,t,134217728,r)}gp(t,134217728)}};Sg=function(t){if(t.tag===13){var n=cr(t),r=Rn(t,n);if(r!==null){var i=xt();on(r,t,n,i)}gp(t,n)}};Eg=function(){return Ce};Ng=function(t,n){var r=Ce;try{return Ce=t,n()}finally{Ce=r}};Sc=function(t,n,r){switch(n){case"input":if(vc(t,r),n=r.name,r.type==="radio"&&n!=null){for(r=t;r.parentNode;)r=r.parentNode;for(r=r.querySelectorAll("input[name="+JSON.stringify(""+n)+'][type="radio"]'),n=0;n<r.length;n++){var i=r[n];if(i!==t&&i.form===t.form){var s=Zo(i);if(!s)throw Error(V(90));sg(i),vc(i,s)}}}break;case"textarea":og(t,r);break;case"select":n=r.value,n!=null&&xi(t,!!r.multiple,n,!1)}};mg=dp;gg=Pr;var xv={usingClientEntryPoint:!1,Events:[oa,di,Zo,ug,hg,dp]},Xi={findFiberByHostInstance:Ar,bundleType:0,version:"18.3.1",rendererPackageName:"react-dom"},Lv={bundleType:Xi.bundleType,version:Xi.version,rendererPackageName:Xi.rendererPackageName,rendererConfig:Xi.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Un.ReactCurrentDispatcher,findHostInstanceByFiber:function(t){return t=Lg(t),t===null?null:t.stateNode},findFiberByHostInstance:Xi.findFiberByHostInstance||gv,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1-next-f1338f8080-20240426"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var Oa=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!Oa.isDisabled&&Oa.supportsFiber)try{Yo=Oa.inject(Lv),mn=Oa}catch{}}Pt.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=xv;Pt.createPortal=function(t,n){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!xp(n))throw Error(V(200));return mv(t,n,null,r)};Pt.createRoot=function(t,n){if(!xp(t))throw Error(V(299));var r=!1,i="",s=Jf;return n!=null&&(n.unstable_strictMode===!0&&(r=!0),n.identifierPrefix!==void 0&&(i=n.identifierPrefix),n.onRecoverableError!==void 0&&(s=n.onRecoverableError)),n=mp(t,1,!1,null,null,r,!1,i,s),t[Mn]=n.current,Is(t.nodeType===8?t.parentNode:t),new fp(n)};Pt.findDOMNode=function(t){if(t==null)return null;if(t.nodeType===1)return t;var n=t._reactInternals;if(n===void 0)throw typeof t.render=="function"?Error(V(188)):(t=Object.keys(t).join(","),Error(V(268,t)));return t=Lg(n),t=t===null?null:t.stateNode,t};Pt.flushSync=function(t){return Pr(t)};Pt.hydrate=function(t,n,r){if(!il(n))throw Error(V(200));return sl(null,t,n,!0,r)};Pt.hydrateRoot=function(t,n,r){if(!xp(t))throw Error(V(405));var i=r!=null&&r.hydratedSources||null,s=!1,a="",o=Jf;if(r!=null&&(r.unstable_strictMode===!0&&(s=!0),r.identifierPrefix!==void 0&&(a=r.identifierPrefix),r.onRecoverableError!==void 0&&(o=r.onRecoverableError)),n=Kf(n,null,t,1,r??null,s,!1,a,o),t[Mn]=n.
41current,Is(t),i)for(t=0;t<i.length;t++)r=i[t],s=r._getVersion,s=s(r._source),n.mutableSourceEagerHydrationData==null?n.mutableSourceEagerHydrationData=[r,s]:n.mutableSourceEagerHydrationData.push(r,s);return new rl(n)};Pt.render=function(t,n,r){if(!il(n))throw Error(V(200));return sl(null,t,n,!1,r)};Pt.unmountComponentAtNode=function(t){if(!il(t))throw Error(V(40));return t._reactRootContainer?(Pr(function(){sl(null,null,t,!1,function(){t._reactRootContainer=null,t[Mn]=null})}),!0):!1};Pt.unstable_batchedUpdates=dp;Pt.unstable_renderSubtreeIntoContainer=function(t,n,r,i){if(!il(r))throw Error(V(200));if(t==null||t._reactInternals===void 0)throw Error(V(38));return sl(t,n,r,!1,i)};Pt.version="18.3.1-next-f1338f8080-20240426";function $f(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE($f)}catch(t){console.error(t)}}$f(),Jm.exports=Pt;var Vn=Jm.exports,dh=Vn;uc.createRoot=dh.createRoot,uc.hydrateRoot=dh.hydrateRoot;/** 42 * @remix-run/router v1.23.2 43 * 44 * Copyright (c) Remix Software Inc. 45 * 46 * This source code is licensed under the MIT license found in the 47 * LICENSE.md file in the root directory of this source tree. 48 * 49 * @license MIT 50 */function Ws(){return Ws=Object.assign?Object.assign.bind():function(t){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(t[i]=r[i])}return t},Ws.apply(this,arguments)}var tr;(function(t){t.Pop="POP",t.Push="PUSH",t.Replace="REPLACE"})(tr||(tr={}));const ph="popstate";function vv(t){t===void 0&&(t={});function n(i,s){let{pathname:a,search:o,hash:c}=i.location;return sd("",{pathname:a,search:o,hash:c},s.state&&s.state.usr||null,s.state&&s.state.key||"default")}function r(i,s){return typeof s=="string"?s:Ro(s)}return yv(n,r,null,t)}function Qe(t,n){if(t===!1||t===null||typeof t>"u")throw new Error(n)}function Lp(t,n){if(!t){typeof console<"u"&&console.warn(n);try{throw new Error(n)}catch{}}}function bv(){return Math.random().toString(36).substr(2,8)}function uh(t,n){return{usr:t.state,key:t.key,idx:n}}function sd(t,n,r,i){return r===void 0&&(r=null),Ws({pathname:typeof t=="string"?t:t.pathname,search:"",hash:""},typeof n=="string"?Ri(n):n,{state:r,key:n&&n.key||i||bv()})}function Ro(t){let{pathname:n="/",search:r="",hash:i=""}=t;return r&&r!=="?"&&(n+=r.charAt(0)==="?"?r:"?"+r),i&&i!=="#"&&(n+=i.charAt(0)==="#"?i:"#"+i),n}function Ri(t){let n={};if(t){let r=t.indexOf("#");r>=0&&(n.hash=t.substr(r),t=t.substr(0,r));let i=t.indexOf("?");i>=0&&(n.search=t.substr(i),t=t.substr(0,i)),t&&(n.pathname=t)}return n}function yv(t,n,r,i){i===void 0&&(i={});let{window:s=document.defaultView,v5Compat:a=!1}=i,o=s.history,c=tr.Pop,l=null,d=p();d==null&&(d=0,o.replaceState(Ws({},o.state,{idx:d}),""));function p(){return(o.state||{idx:null}).idx}function u(){c=tr.Pop;let y=p(),h=y==null?null:y-d;d=y,l&&l({action:c,location:v.location,delta:h})}function g(y,h){c=tr.Push;let b=sd(v.location,y,h);d=p()+1;let x=uh(b,d),A=v.createHref(b);try{o.pushState(x,"",A)}catch(w){if(w instanceof DOMException&&w.name==="DataCloneError")throw w;s.location.assign(A)}a&&l&&l({action:c,location:v.location,delta:1})}function f(y,h){c=tr.Replace;let b=sd(v.location,y,h);d=p();let x=uh(b,d),A=v.createHref(b);o.replaceState(x,"",A),a&&l&&l({action:c,location:v.location,delta:0})}function L(y){let h=s.location.origin!=="null"?s.location.origin:s.location.href,b=typeof y=="string"?y:Ro(y);return b=b.replace(/ $/,"%20"),Qe(h,"No window.location.(origin|href) available to create URL for href: "+b),new URL(b,h)}let v={get action(){return c},get location(){return t(s,o)},listen(y){if(l)throw new Error("A history only accepts one active listener");return s.addEventListener(ph,u),l=y,()=>{s.removeEventListener(ph,u),l=null}},createHref(y){return n(s,y)},createURL:L,encodeLocation(y){let h=L(y);return{pathname:h.pathname,search:h.search,hash:h.hash}},push:g,replace:f,go(y){return o.go(y)}};return v}var hh;(function(t){t.data="data",t.deferred="deferred",t.redirect="redirect",t.error="error"})(hh||(hh={}));function jv(t,n,r){return r===void 0&&(r="/"),wv(t,n,r)}function wv(t,n,r,i){let s=typeof n=="string"?Ri(n):n,a=vp(s.pathname||"/",r);if(a==null)return null;let o=Xf(t);kv(o);let c=null;for(let l=0;c==null&&l<o.length;++l){let d=Rv(a);c=Fv(o[l],d)}return c}function Xf(t,n,r,i){n===void 0&&(n=[]),r===void 0&&(r=[]),i===void 0&&(i="");let s=(a,o,c)=>{let l={relativePath:c===void 0?a.path||"":c,caseSensitive:a.caseSensitive===!0,childrenIndex:o,route:a};l.relativePath.startsWith("/")&&(Qe(l.relativePath.startsWith(i),'Absolute route path "'+l.relativePath+'" nested under path '+('"'+i+'" is not val
50id. An absolute child route path ')+"must start with the combined path of all its parent routes."),l.relativePath=l.relativePath.slice(i.length));let d=pr([i,l.relativePath]),p=r.concat(l);a.children&&a.children.length>0&&(Qe(a.index!==!0,"Index routes must not have child routes. Please remove "+('all child routes from route path "'+d+'".')),Xf(a.children,n,p,d)),!(a.path==null&&!a.index)&&n.push({path:d,score:Tv(d,a.index),routesMeta:p})};return t.forEach((a,o)=>{var c;if(a.path===""||!((c=a.path)!=null&&c.includes("?")))s(a,o);else for(let l of ex(a.path))s(a,o,l)}),n}function ex(t){let n=t.split("/");if(n.length===0)return[];let[r,...i]=n,s=r.endsWith("?"),a=r.replace(/\?$/,"");if(i.length===0)return s?[a,""]:[a];let o=ex(i.join("/")),c=[];return c.push(...o.map(l=>l===""?a:[a,l].join("/"))),s&&c.push(...o),c.map(l=>t.startsWith("/")&&l===""?"/":l)}function kv(t){t.sort((n,r)=>n.score!==r.score?r.score-n.score:qv(n.routesMeta.map(i=>i.childrenIndex),r.routesMeta.map(i=>i.childrenIndex)))}const Av=/^:[\w-]+$/,Sv=3,Ev=2,Nv=1,Cv=10,_v=-2,mh=t=>t==="*";function Tv(t,n){let r=t.split("/"),i=r.length;return r.some(mh)&&(i+=_v),n&&(i+=Ev),r.filter(s=>!mh(s)).reduce((s,a)=>s+(Av.test(a)?Sv:a===""?Nv:Cv),i)}function qv(t,n){return t.length===n.length&&t.slice(0,-1).every((i,s)=>i===n[s])?t[t.length-1]-n[n.length-1]:0}function Fv(t,n,r){let{routesMeta:i}=t,s={},a="/",o=[];for(let c=0;c<i.length;++c){let l=i[c],d=c===i.length-1,p=a==="/"?n:n.slice(a.length)||"/",u=Ov({path:l.relativePath,caseSensitive:l.caseSensitive,end:d},p),g=l.route;if(!u)return null;
vendor: 5,343 bytes, lines 50-59
50Object.assign(s,u.params),o.push({params:s,pathname:pr([a,u.pathname]),pathnameBase:Bv(pr([a,u.pathnameBase])),route:g}),u.pathnameBase!=="/"&&(a=pr([a,u.pathnameBase]))}return o}function Ov(t,n){typeof t=="string"&&(t={path:t,caseSensitive:!1,end:!0});let[r,i]=Mv(t.path,t.caseSensitive,t.end),s=n.match(r);if(!s)return null;let a=s[0],o=a.replace(/(.)\/+$/,"$1"),c=s.slice(1);return{params:i.reduce((d,p,u)=>{let{paramName:g,isOptional:f}=p;if(g==="*"){let v=c[u]||"";o=a.slice(0,a.length-v.length).replace(/(.)\/+$/,"$1")}const L=c[u];return f&&!L?d[g]=void 0:d[g]=(L||"").replace(/%2F/g,"/"),d},{}),pathname:a,pathnameBase:o,pattern:t}}function Mv(t,n,r){n===void 0&&(n=!1),r===void 0&&(r=!0),Lp(t==="*"||!t.endsWith("*")||t.endsWith("/*"),'Route path "'+t+'" will be treated as if it were '+('"'+t.replace(/\*$/,"/*")+'" because the `*` character must ')+"always follow a `/` in the pattern. To get rid of this warning, "+('please change the route path to "'+t.replace(/\*$/,"/*")+'".'));let i=[],s="^"+t.replace(/\/*\*?$/,"").replace(/^\/*/,"/").replace(/[\\.*+^${}|()[\]]/g,"\\$&").replace(/\/:([\w-]+)(\?)?/g,(o,c,l)=>(i.push({paramName:c,isOptional:l!=null}),l?"/?([^\\/]+)?":"/([^\\/]+)"));return t.endsWith("*")?(i.push({paramName:"*"}),s+=t==="*"||t==="/*"?"(.*)$":"(?:\\/(.+)|\\/*)$"):r?s+="\\/*$":t!==""&&t!=="/"&&(s+="(?:(?=\\/|$))"),[new RegExp(s,n?void 0:"i"),i]}function Rv(t){try{return t.split("/").map(n=>decodeURIComponent(n).replace(/\//g,"%2F")).join("/")}catch(n){return Lp(!1,'The URL path "'+t+'" could not be decoded because it is is a malformed URL segment. This is probably due to a bad percent '+("encoding ("+n+").")),t}}function vp(t,n){if(n==="/")return t;if(!t.toLowerCase().startsWith(n.toLowerCase()))return null;let r=n.endsWith("/")?n.length-1:n.length,i=t.charAt(r);return i&&i!=="/"?null:t.slice(r)||"/"}const Pv=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Iv=t=>Pv.test(t);function Dv(t,n){n===void 0&&(n="/");let{pathname:r,search:i="",hash:s=""}=typeof t=="string"?Ri(t):t,a;if(r)if(Iv(r))a=r;else{if(r.includes("//")){let o=r;r=r.replace(/\/\/+/g,"/"),Lp(!1,"Pathnames cannot have embedded double slashes - normalizing "+(o+" -> "+r))}r.startsWith("/")?a=gh(r.substring(1),"/"):a=gh(r,n)}else a=n;return{pathname:a,search:Uv(i),hash:Vv(s)}}function gh(t,n){let r=n.replace(/\/+$/,"").split("/");return t.split("/").forEach(s=>{s===".."?r.length>1&&r.pop():s!=="."&&r.push(s)}),r.length>1?r.join("/"):"/"}function Zl(t,n,r,i){return"Cannot include a '"+t+"' character in a manually specified "+("`to."+n+"` field ["+JSON.stringify(i)+"]. Please separate it out to the ")+("`to."+r+"` field. Alternatively you may provide the full path as ")+'a string in <Link to="..."> and the router will parse it for you.'}function zv(t){return t.filter((n,r)=>r===0||n.route.path&&n.route.path.length>0)}function tx(t,n){let r=zv(t);return n?r.map((i,s)=>s===r.length-1?i.pathname:i.pathnameBase):r.map(i=>i.pathnameBase)}function nx(t,n,r,i){i===void 0&&(i=!1);let s;typeof t=="string"?s=Ri(t):(s=Ws({},t),Qe(!s.pathname||!s.pathname.includes("?"),Zl("?","pathname","search",s)),Qe(!s.pathname||!s.pathname.includes("#"),Zl("#","pathname","hash",s)),Qe(!s.search||!s.search.includes("#"),Zl("#","search","hash",s)));let a=t===""||s.pathname==="",o=a?"/":s.pathname,c;if(o==null)c=r;else{let u=n.length-1;if(!i&&o.startsWith("..")){let g=o.split("/");for(;g[0]==="..";)g.shift(),u-=1;s.pathname=g.join("/")}c=u>=0?n[u]:"/"}let l=Dv(s,c),d=o&&o!=="/"&&o.endsWith("/"),p=(a||o===".")&&r.endsWith("/");return!l.pathname.endsWith("/")&&(d||p)&&(l.pathname+="/"),l}const pr=t=>t.join("/").replace(/\/\/+/g,"/"),Bv=t=>t.replace(/\/+$/,"").replace(/^\/*/,"/"),Uv=t=>!t||t==="?"?"":t.startsWith("?")?t:"?"+t,Vv=t=>!t||t==="#"?"":t.startsWith("#")?t:"#"+t;function Hv(t){return t!=null&&typeof t.status=="number"&&typeof t.statusText=="string"&&typeof t.internal=="boolean"&&"data"in t}const rx=["post","put","patch","delete"];new Set(rx);const Yv=["get",...rx];new Set(Yv);/** 51 * React Router v6.30.3 52 * 53 * Copyright (c) Remix Software Inc. 54 * 55 * This source code is licensed under the MIT license found in the 56 * LICENSE.md file in the root directory of this source tree. 57 * 58 * @license MIT 59 */function Qs(){return Qs=Object.assign?Object.assign.bind():function(t){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(t[i]=r[i])}return t},Qs.apply(this,arguments)}const bp=m.createContext(null),Gv=m.createContext(null),Gr=m.createContext(null),al=m.createContext(null),vr=m.createContext({outlet:null,matches:[],isDataRoute:!1}),ix=m.createContext(null);function Wv(t,n){let{relative:r}=n===void 0?{}:n;ca()||Qe(!1);let{basename:i,navigator:s}=m.useContext(Gr),{hash:a,pathname:o,search:c}=ax(t,{relative:r}),l=o;return i!=="/"&&(l=o==="/"?i:pr([i,o])),s.createHref({pathname:l,search:c,hash:a})}function ca(){return m.useContext(al)!=null}function Wr(){return ca()||Qe(!1),m.useContext(al).location}function sx(t){m.useContext(Gr).static||m.useLayoutEffect(t)}function da(){let{isDataRoute:t}=m.useContext(vr);return t?a2():Qv()}function Qv(){ca()||Qe(!1);let t=m.useContext(bp),{basename:n,future:r,navigator:i}=m.useContext(Gr),{matches:s}=m.useContext(vr),{pathname:a}=Wr(),o=JSON.stringify(tx(s,r.v7_relativeSplatPath)),c=m.useRef(!1);return sx(()=>{c.current=!0}
vendor: 4,426 bytes, line 59
59),m.useCallback(function(d,p){if(p===void 0&&(p={}),!c.current)return;if(typeof d=="number"){i.go(d);return}let u=nx(d,JSON.parse(o),a,p.relative==="path");t==null&&n!=="/"&&(u.pathname=u.pathname==="/"?n:pr([n,u.pathname])),(p.replace?i.replace:i.push)(u,p.state,p)},[n,i,o,a,t])}function yp(){let{matches:t}=m.useContext(vr),n=t[t.length-1];return n?n.params:{}}function ax(t,n){let{relative:r}=n===void 0?{}:n,{future:i}=m.useContext(Gr),{matches:s}=m.useContext(vr),{pathname:a}=Wr(),o=JSON.stringify(tx(s,i.v7_relativeSplatPath));return m.useMemo(()=>nx(t,JSON.parse(o),a,r==="path"),[t,o,a,r])}function Zv(t,n){return Kv(t,n)}function Kv(t,n,r,i){ca()||Qe(!1);let{navigator:s}=m.useContext(Gr),{matches:a}=m.useContext(vr),o=a[a.length-1],c=o?o.params:{};o&&o.pathname;let l=o?o.pathnameBase:"/";o&&o.route;let d=Wr(),p;if(n){var u;let y=typeof n=="string"?Ri(n):n;l==="/"||(u=y.pathname)!=null&&u.startsWith(l)||Qe(!1),p=y}else p=d;let g=p.pathname||"/",f=g;if(l!=="/"){let y=l.replace(/^\//,"").split("/");f="/"+g.replace(/^\//,"").split("/").slice(y.length).join("/")}let L=jv(t,{pathname:f}),v=t2(L&&L.map(y=>Object.assign({},y,{params:Object.assign({},c,y.params),pathname:pr([l,s.encodeLocation?s.encodeLocation(y.pathname).pathname:y.pathname]),pathnameBase:y.pathnameBase==="/"?l:pr([l,s.encodeLocation?s.encodeLocation(y.pathnameBase).pathname:y.pathnameBase])})),a,r,i);return n&&v?m.createElement(al.Provider,{value:{location:Qs({pathname:"/",search:"",hash:"",state:null,key:"default"},p),navigationType:tr.Pop}},v):v}function Jv(){let t=s2(),n=Hv(t)?t.status+" "+t.statusText:t instanceof Error?t.message:JSON.stringify(t),r=t instanceof Error?t.stack:null,s={padding:"0.5rem",backgroundColor:"rgba(200,200,200, 0.5)"};return m.createElement(m.Fragment,null,m.createElement("h2",null,"Unexpected Application Error!"),m.createElement("h3",{style:{fontStyle:"italic"}},n),r?m.createElement("pre",{style:s},r):null,null)}const $v=m.createElement(Jv,null);class Xv extends m.Component{constructor(n){super(n),this.state={location:n.location,revalidation:n.revalidation,error:n.error}}static getDerivedStateFromError(n){return{error:n}}static getDerivedStateFromProps(n,r){return r.location!==n.location||r.revalidation!=="idle"&&n.revalidation==="idle"?{error:n.error,location:n.location,revalidation:n.revalidation}:{error:n.error!==void 0?n.error:r.error,location:r.location,revalidation:n.revalidation||r.revalidation}}componentDidCatch(n,r){console.error("React Router caught the following error during render",n,r)}render(){return this.state.error!==void 0?m.createElement(vr.Provider,{value:this.props.routeContext},m.createElement(ix.Provider,{value:this.state.error,children:this.props.component})):this.props.children}}function e2(t){let{routeContext:n,match:r,children:i}=t,s=m.useContext(bp);return s&&s.static&&s.staticContext&&(r.route.errorElement||r.route.ErrorBoundary)&&(s.staticContext._deepestRenderedBoundaryId=r.route.id),m.createElement(vr.Provider,{value:n},i)}function t2(t,n,r,i){var s;if(n===void 0&&(n=[]),r===void 0&&(r=null),i===void 0&&(i=null),t==null){var a;if(!r)return null;if(r.errors)t=r.matches;else if((a=i)!=null&&a.v7_partialHydration&&n.length===0&&!r.initialized&&r.matches.length>0)t=r.matches;else return null}let o=t,c=(s=r)==null?void 0:s.errors;if(c!=null){let p=o.findIndex(u=>u.route.id&&(c==null?void 0:c[u.route.id])!==void 0);p>=0||Qe(!1),o=o.slice(0,Math.min(o.length,p+1))}let l=!1,d=-1;if(r&&i&&i.v7_partialHydration)for(let p=0;p<o.length;p++){let u=o[p];if((u.route.HydrateFallback||u.route.hydrateFallbackElement)&&(d=p),u.route.id){let{loaderData:g,errors:f}=r,L=u.route.loader&&g[u.route.id]===void 0&&(!f||f[u.route.id]===void 0);if(u.route.lazy||L){l=!0,d>=0?o=o.slice(0,d+1):o=[o[0]];break}}}return o.reduceRight((p,u,g)=>{let f,L=!1,v=null,y=null;r&&(f=c&&u.route.id?c[u.route.id]:void 0,v=u.route.errorElement||$v,l&&(d<0&&g===0?(o2("route-fallback"),L=!0,y=null):d===g&&(L=!0,y=u.route.hydrateFallbackElement||null)));let h=n.concat(o.slice(0,g+1)),b=()=>{let x;return f?x=v:L?x=y:u.route.Component?x=m.createElement(u.route.Component,null):u.route.element?x=u.route.element:x=p,m.createElement(e2,{match:u,routeContext:{outlet:p,matches:h,isDataRoute:r!=null},children:x})};return r&&(u.route.ErrorBoundary||u.route.errorElement||g===0)?m.createElement(Xv,{location:r.location,revalidation:r.revalidation,component:v,error:f,children:b(),routeC
59ontext:{outlet:null,matches:h,isDataRoute:!0}}):b()},null)}var ox=function(t){return t.UseBlocker="useBlocker",t.UseRevalidator="useRevalidator",t.UseNavigateStable="useNavigate",t}(ox||{}),lx=function(t){return t.UseBlocker="useBlocker",t.UseLoaderData="useLoaderData",t.UseActionData="useActionData",t.UseRouteError="useRouteError",t.UseNavigation="useNavigation",t.UseRouteLoaderData="useRouteLoaderData",t.UseMatches="useMatches",t.UseRevalidator="useRevalidator",t.UseNavigateStable="useNavigate",t.UseRouteId="useRouteId",t}(lx||{});function n2(t){let n=m.useContext(bp);return n||Qe(!1),n}function r2(t){let n=m.useContext(Gv);return n||Qe(!1),n}function i2(t){let n=m.useContext(vr);return n||Qe(!1),n}function cx(t){let n=i2(),r=n.matches[n.matches.length-1];return r.route.id||Qe(!1),r.route.id}function s2(){var t;let n=m.useContext(ix),r=r2(),i=cx();return n!==void 0?n:(t=r.errors)==null?void 0:t[i]}function a2(){let{router:t}=n2(ox.UseNavigateStable),n=cx(lx.UseNavigateStable),r=m.useRef(!1);return sx(()=>{r.current=!0}),m.useCallback(function(s,a){a===void 0&&(a={}),r.current&&(typeof s=="number"?t.navigate(s):t.navigate(s,Qs({fromRouteId:n},a)))},[t,n])}const fh={};function o2(t,n,r){fh[t]||(fh[t]=!0)}function l2(t,n){t==null||t.v7_startTransition,t==null||t.v7_relativeSplatPath}function An(t){Qe(!1)}function c2(t){let{basename:n="/",children:r=null,location:i,navigationType:s=tr.Pop,navigator:a,static:o=!1,future:c}=t;ca()&&Qe(!1);let l=n.replace(/^\/*/,"/"),d=m.useMemo(()=>({basename:l,navigator:a,static:o,future:Qs({v7_relativeSplatPath:!1},c)}),[l,c,a,o]);typeof i=="string"&&(i=Ri(i));let{pathname:p="/",search:u="",hash:g="",state:f=null,key:L="default"}=i,v=m.useMemo(()=>{let y=vp(p,l);return y==null?null:{location:{pathname:y,search:u,hash:g,state:f,key:L},navigationType:s}},[l,p,u,g,f,L,s]);return v==null?null:m.createElement(Gr.Provider,{value:d},m.createElement(al.Provider,{children:r,value:v}))}function d2(t){let{children:n,location:r}=t;return Zv(ad(n),r)}new Promise(()=>{});function ad(t,n){n===void 0&&(n=[]);let r=[];return m.Children.forEach(t,(i,s)=>{if(!m.isValidElement(i))return;let a=[...n,s];if(i.type===m.Fragment){r.push.apply(r,ad(i.props.children,a));return}i.type!==An&&Qe(!1),!i.props.index||!i.props.children||Qe(!1);let o={id:i.props.id||a.join("-"),caseSensitive:i.props.caseSensitive,element:i.props.element,Component:i.props.Component,index:i.props.index,path:i.props.path,loader:i.props.loader,action:i.props.action,errorElement:i.props.errorElement,ErrorBoundary:i.props.ErrorBoundary,hasErrorBoundary:i.props.ErrorBoundary!=null||i.props.errorElement!=null,shouldRevalidate:i.props.shouldRevalidate,handle:i.props.handle,lazy:i.props.lazy};i.props.children&&(o.children=ad(i.props.children,a)),r.push(o)}),r}/** 60 * React Router DOM v6.30.3 61 * 62 * Copyright (c) Remix Software Inc. 63 * 64 * This source code is licensed under the MIT license found in the 65 * LICENSE.md file in the root directory of this source tree. 66 * 67 * @license MIT 68 */function od(){return od=Object.assign?Object.assign.bind():function(t){for(var n=1;n<arguments.length;n++){var r=arguments[n];for(var i in r)Object.prototype.hasOwnProperty.call(r,i)&&(t[i]=r[i])}return t},od.apply(this,arguments)}function p2(t,n){if(t==null)return{};var r={},i=Object.keys(t),s,a;for(a=0;a<i.length;a++)s=i[a],!(n.indexOf(s)>=0)&&(r[s]=t[s]);return r}function u2(t){return!!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}function h2(t,n){return t.button===0&&(!n||n==="_self")&&!u2(t)}function ld(t){return t===void 0&&(t=""),new URLSearchParams(typeof t=="string"||Array.isArray(t)||t instanceof URLSearchParams?t:Object.keys(t).reduce((n,r)=>{let i=t[r];return n.concat(Array.isArray(i)?i.map(s=>[r,s]):[[r,i]])},[]))}function m2(t,n){let r=ld(t);return n&&n.forEach((i,s)=>{r.has(s)||n.getAll(s).forEach(a=>{r.append(s,a)})}),r}const g2=["onClick","relative","reloadDocument","replace","state","target","to","preventScrollReset","viewTransition"],f2="6";try{window.__reactRouterVersion=f2}catch{}const x2="startTransition",xh=l0[x2];function L2(t){let{basename:n,children:r,future:i,window:s}=t,a=m.useRef();a.current==null&&(a.current=vv({window:s,v5Compat:!0}));let o=a.current,[c,l]=m.useState({action:o.action,location:o.location}),{v7_startTransition:d}=i||{},p=m.useCallback(u=>{d&&xh?xh(()=>l(u)):l(u)},[l,d]);return m.useLayoutEffect(()=>o.listen(p),[o,p]),m.useEffect(()=>l2(i),[i]),m.createElement(c2,{basename:n,children:r,location:c.location,navigationType:c.action,navigator:o,future:i})}const v2=typeof window<"u"&&typeof window.document<"u"&&typeof window.document.createElement<"u",b2=/^(?:[a-z][a-z0-9+.-]*:|\/\/)/i,Ti=m.forwardRef(function(n,r){let{onClick:i,relative:s,reloadDocument:a,replace:o,state:c,target:l,to:d,preventScrollReset:p,viewTransition:u}=n,g=p2(n,g2),{basename:f}=m.useContext(Gr),L,v=!1;
68if(typeof d=="string"&&b2.test(d)&&(L=d,v2))try{let x=new URL(window.location.href),A=d.startsWith("//")?new URL(x.protocol+d):new URL(d),w=vp(A.pathname,f);A.origin===x.origin&&w!=null?d=w+A.search+A.hash:v=!0}catch{}let y=Wv(d,{relative:s}),h=y2(d,{replace:o,state:c,target:l,preventScrollReset:p,relative:s,viewTransition:u});function b(x){i&&i(x),x.defaultPrevented||h(x)}return m.createElement("a",od({},g,{href:L||y,onClick:v||a?i:b,ref:r,target:l}))});var Lh;(function(t){t.UseScrollRestoration="useScrollRestoration",t.UseSubmit="useSubmit",t.UseSubmitFetcher="useSubmitFetcher",t.UseFetcher="useFetcher",t.useViewTransitionState="useViewTransitionState"})(Lh||(Lh={}));var vh;(function(t){t.UseFetcher="useFetcher",t.UseFetchers="useFetchers",t.UseScrollRestoration="useScrollRestoration"})(vh||(vh={}));function y2(t,n){let{target:r,replace:i,state:s,preventScrollReset:a,relative:o,viewTransition:c}=n===void 0?{}:n,l=da(),d=Wr(),p=ax(t,{relative:o});return m.useCallback(u=>{if(h2(u,r)){u.preventDefault();let g=i!==void 0?i:Ro(d)===Ro(p);l(t,{replace:g,state:s,preventScrollReset:a,relative:o,viewTransition:c})}},[d,l,p,i,s,r,t,a,o,c])}function j2(t){let n=m.useRef(ld(t)),r=m.useRef(!1),i=Wr(),s=m.useMemo(()=>m2(i.search,r.current?null:n.current),[i.search]),a=da(),o=m.useCallback((c,l)=>{const d=ld(typeof c=="function"?c(s):c);r.current=!0,a("?"+d,l)},[a,s]);return[s,o]}function dx(){return typeof window>"u"?!1:/^\/(?:fr\/)?carte\/?$/.test(window.location.pathname)&&new URLSearchParams(window.location.search).get("standardTutorial")==="1"}function In(){return dx()&&window.parent!==window}function T6(){return In()?(window.parent.postMessage({type:"proplace:standard-tutorial:choose-mode"},window.location.origin),!0):!1}const w2={email:"[email protected]",fund_type:"asteria-demo",ts:0},jp="proplace_auth",k2=60*60*24*365;function px(t){return typeof location<"u"&&location.hostname.endsWith("proplace.co")?`domain=.proplace.co; path=/; max-age=${t}; secure; samesite=lax`:`path=/; max-age=${t}; samesite=lax`}function A2(){if(In())return;
68const t=Ge();!(t!=null&&t.email)&&!(t!=null&&t.fund_type)||ur(t)}function ur(t){if(In())return;const n=encodeURIComponent(btoa(JSON.stringify(t)));document.cookie=`${jp}=${n}; ${px(k2)}`}function Ge(){if(In())return{...w2};if(typeof document>"u")return null;const t=document.cookie.split("; ").find(n=>n.startsWith(jp+"="));if(!t)return null;try{return JSON.parse(atob(decodeURIComponent(t.split("=")[1])))}catch{return null}}function ux(){In()||(document.cookie=`${jp}=; ${px(0)}`)}function hx(t){return(t||"").trim().replace(/^member-/i,"").replace(/[-_]+/g," ").trim()}function S2(t,n="fr"){const r=hx(t);return r?`${r} deal flow`:n==="fr"?"Mon deal flow":"My deal flow"}function wp(t){return(t||"").trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"").slice(0,48)}function Tn(t){const n=wp(t);return n?`/cibles/${n}/`:"/cibles/"}function pa(t){const n=wp(t);return n?`/cibles/${n}/open/`:"/cibles/"}function kp(t){const n=(t||"").toLowerCase();return n==="standard"||n==="enterprise"}function Ir(t,n){var s;if((n==null?void 0:n.open)===!0)return pa(t);if((n==null?void 0:n.open)===!1)return Tn(t);const r=String(((s=Ge())==null?void 0:s.member_session)||"").trim(),i=`/cibles/go/?fund=${encodeURIComponent(t)}`;return r?`${i}&session=${encodeURIComponent(r)}`:i}function bh(t,n){return`https://proplace.co${n?pa(t):Tn(t)}`}function lo(t="fr"){return t==="fr"?"/fr/compte":"/compte"}function rn(t){return(t||"").toLowerCase().startsWith("member-")}const Kl="proplace_lang",E2=["/actualites","/research"];function Zs(t){return E2.some(n=>t===n||t.startsWith(n+"/"))}const mx=m.createContext(null);function yh(t){return t==="/en"||t.startsWith("/en/")?(Zs(t.slice(3)||"/"),"en"):Zs(t)||t==="/fr"||t.startsWith("/fr/")?"fr":"en"}function Ap(t){return/^\/en\/newsletter\/?$/.test(t)?"/newsletter":t.startsWith("/en/")&&Zs(t.slice(3))?t.slice(3):t==="/fr"?"/":t.startsWith("/fr/")?t.slice(3):t}function co(t,n){const r=Ap(t);return/^\/newsletter\/?$/.test(r)?`/${n}/newsletter`:Zs(r)?n==="fr"?r:"/en"+r:n==="en"?r:r==="/"?"/fr":"/fr"+r}let jh=!1;function N2({children:t}){const n=Wr(),r=da(),i=yh(n.pathname),s=m.useRef(!1);m.useEffect(()=>{if(jh||s.current||(jh=!0,s.current=!0,yh(n.pathname)!=="en")||/^\/en\/newsletter\/?$/.test(n.pathname)||Zs(Ap(n.pathname)))return;let c=null;try{const d=localStorage.getItem(Kl);(d==="en"||d==="fr")&&(c=d)}catch{}if((c??"en")==="fr"){const d=co(n.pathname,"fr")+n.search+n.hash;r(d,{replace:!0})}},[]),m.useEffect(()=>{typeof document<"u"&&(document.documentElement.lang=i);try{localStorage.setItem(Kl,i)}catch{}},[i]);const a=c=>{try{localStorage.setItem(Kl,c)}catch{}const l=co(n.pathname,c)+n.search+n.hash;r(l),typeof window<"u"&&window.scrollTo({top:0})},o=m.useMemo(()=>({lang:i,switchLang:a,toggle:()=>a(i==="en"?"fr":"en"),localizePath:(c,l=i)=>co(c,l)}),[i,n.pathname,n.search,n.hash]);return e.jsx(mx.Provider,{value:o,children:t})}function ae(){const t=m.useContext(mx);if(!t)throw new Error("useLang() doit être utilisé dans <LanguageProvider>");return t}const _e="https://alexandre-79537--sourcing-agent-fastapi-app.modal.run",Zt="https://alexandre-79537--proplace-chat-proxy-fastapi-app.modal.run",vn={resolveWebsite:`${_e}/inbound/resolve-website`,uploadDeck:`${_e}/inbound/upload-deck`,evaluateAndSignup:`${_e}/inbound/evaluate-and-signup`,verifyStart:`${_e}/inbound/verify/start`,verifyConfirm:`${_e}/inbound/verify/confirm`,thesisView:`${_e}/inbound/thesis-view`,activateAndSource:`${_e}/inbound/activate-and-source`,signup:`${_e}/inbound/signup`,memberMemos:`${_e}/inbound/member-memos`,credits:`${_e}/inbound/credits`,tryFree:`${_e}/inbound/try-free`,memoStatus:t=>`${_e}/v3/instant-memo/status/${encodeURIComponent(t)}`,memoNotes:(t,n)=>`${_e}/v3/instant-memo/notes/${encodeURIComponent(t)}?since=${n}`};async function q6(t){const n=await fetch(vn.resolveWebsite,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({company_name:t})}
68),r=await n.json().catch(()=>({}));if(!n.ok)throw new Error(r.detail||r.error||`HTTP ${n.status}`);return r}async function C2(t){const n=new FormData;n.append("file",t,t.name||"deck.pdf");const r=await fetch(vn.uploadDeck,{method:"POST",body:n}),i=await r.json().catch(()=>({}));if(!r.ok)throw new Error(i.detail||i.error||`HTTP ${r.status}`);return String(i.pitch_deck_url||"")}async function _2(t){const n=await fetch(vn.evaluateAndSignup,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),r=await n.json().catch(()=>({}));if(!n.ok){const i=r.detail||r.error||`HTTP ${n.status}`;throw new Error(typeof i=="string"?i:JSON.stringify(i))}return r}async function T2(t){const n=await fetch(vn.signup,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),r=await n.json().catch(()=>({}));if(!n.ok){const i=r.detail||r.error||`HTTP ${n.status}`;throw new Error(typeof i=="string"?i:JSON.stringify(i))}return r}async function Jl(t){const n=await fetch(vn.verifyStart,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),r=await n.json().catch(()=>({}));if(!n.ok){const i=r.detail||r.error||`HTTP ${n.status}`;throw new Error(typeof i=="string"?i:JSON.stringify(i))}return r}async function Cs(t){const n=await fetch(vn.verifyConfirm,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)}),r=await n.json().catch(()=>({}));if(!n.ok){const i=r.detail||r.error||`HTTP ${n.status}`;throw new Error(typeof i=="string"?i:JSON.stringify(i))}return r}async function gx(t,n=!1){const r=await fetch(vn.thesisView,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({session:t,fresh:n})}),i=await r.json().catch(()=>({}));if(!r.ok){const s=i.detail||i.error||`HTTP ${r.status}`;throw new Error(typeof s=="string"?s:JSON.stringify(s))}return i}async function fx(t,n="fr",r=""){const i=await fetch(vn.activateAndSource,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({session:t,lang:n,phone:r})}),s=await i.json().catch(()=>({}));if(!i.ok){const a=s.detail||s.error||`HTTP ${i.status}`;throw new Error(typeof a=="string"?a:JSON.stringify(a))}return s}function wh(t){if(!t)return"";const n=String(t.reply||"").trim(),r=String(t.clarification||"").trim();return r&&!n.includes(r)?n?`${n} ${r}`:r:n||String(t.error||"").trim()}const ol=(t,n="sourced")=>{var r;return{fund_slug:t,source:n,...(r=Ge())!=null&&r.member_session?{session:Ge().member_session}:{}}};async function q2(t){try{const n=await fetch(`${Zt}/cibles/last`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ol(t))});if(!n.ok)return null;const r=await n.json().catch(()=>({}));return!r||r.ok===!1?null:r.found===!0?!0:r.found===!1?!1:null}catch{return null}}async function F2(t){try{const r=await(await fetch(`${Zt}/cibles/last`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ol(t))})).json().catch(()=>({})),i=String(r.token||"");if(!i)return null;const s=await fetch(`${Zt}/cibles/list.json?token=${encodeURIComponent(i)}`);if(!s.ok)return null;const o=(await s.json()).criteria;return o&&typeof o=="object"?o:null}catch{return null}}async function O2(t){try{const r=await(await fetch(`${Zt}/cibles/last`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ol(t))})).json().catch(()=>({})),i=String(r.token||"");if(!i)return null;const s=await fetch(`${Zt}/engines-drilldown-batch`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({fund_slug:t,days:7,fund_scoped:!0,token:i,cibles_token:i})});if(!s.ok)return null;const a=await s.json();return a.error?null:a}catch{return null}}const M2="https://alexandre-79537--airtable-bridge-fastapi-app.modal.run";function R2(t){return t?typeof t=="string"?t:typeof t=="object"&&t&&"url"in t?String(t.url||""):"":""}async function kh(t){const n=await fetch(`${M2}/fund-thesis?slug=${encodeURIComponent(t)}`);if(!n.ok)return null;const i=((await n.json().catch(()=>({}))).records||[])[0];if(!i)return null;const s=i.fields||{};let a=null;if(typeof s.fund_thesis=="string"&&s.fund_thesis.trim())try{a=JSON.parse(s.fund_thesis)}catch{a=null}return{airtable_id:i.id,email_lead:String(s.email_lead||""),lang:String(s.lang||""),logo_url:R2(s.logo_url),thesis:a}}async function P2(t,n,r){const i=await fetch(`${Zt}/inbound/account-settings`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:t,fund:n,fields:r})}),s=await i.json().catch(()=>({}));return!i.ok||!s.ok?{ok:!1,error:String(s.error||s.detail||`HTTP ${i.status}`)}:{ok:!0}}async function I2(t){const n={thumbs:[],counts:{yes:0,no:0}};try{const i=await(await fetch(`${Zt}/cibles/last`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(ol(t))})).json().catch(()=>({})),s=String(i.token||"");if(!s)return n;const a=await fetch(`${Zt}/cibles/thumbs-journal`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:s})});if(!a.ok)return n;const o=await a.json();return{thumbs:Array.isArray(o.thumbs)?o.thumbs:[],counts:o.counts||{yes:0,no:0}}}catch{return n}}async function D2(t,n,r){const i=await fetch(`${Zt}/inbound/account-thesis-chat`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:t,fund:n,message:r})}),s=await i.json().catch(()=>({}));if(!i.ok)throw new Error(String(s.error||s.detail||`HTTP ${i.status}`));return s}async function xx(t,n){const r=await fetch(`${Zt}/inbound/thesis-refine`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({session:t,message:n})}),i=await r.json().catch(()=>({}));if(!r.ok){const s=i.detail||i.error||`HTTP ${r.status}`;throw new Error(typeof s=="string"?s:JSON.stringify(s))}return i}async function Sp(t){return await(await fetch(`${Zt}/cibles/thesis-chat-status`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({job_id:t})})).json().catch(()=>({ok:!1,done:!1}))}async function z2(t,n){try{return await(await fetch(vn.memoNotes(t,n))).json()}catch{return{ok:!1,found:!1,seq:n,notes:[]}}}async function B2(t){return await(await fetch(vn.memoStatus(t))).json().catch(()=>({done:!1}))}const Ah={rss:"RSS",google_news:"Google News",google_alerts:"Google Alerts",pappers_fr:"Pappers FR",crt:"CRT",github:"GitHub",hn:"Hacker News",fundraising:"Fundraising",backfill:"Backfill",websets_engine:"Exa Websets",websets:"Exa Websets",parallel:"Parallel",linkedin_posts:"LinkedIn Posts",linkedin_jobs:"LinkedIn Jobs",exa_semantic:"Exa Semantic",exa_similar:"Exa Similar",crunchbase_search:"
68Crunchbase",other_custom:"Autres (Make sur-mesure)",manual_paste:"Saisie manuelle",find_similar_qualified:"Similaires aux qualifiés",editorial:"Ãditorial (médias experts)",daily_news:"Daily news thèse",alumni:"Alumni fondateurs",competitor_exodus:"Départs concurrents",hackernews:"Hacker News",crt_sh:"CRT",pappers:"Pappers FR",pappers_intl:"Pappers International",opencorporates:"OpenCorporates",tavily:"Tavily",registre_gouv:"Registre officiel (gouv)",hunter:"Hunter",sales_nav:"Sales Navigator",sourcing:"Sourcing Proplace",local:"Moteur local (Google Maps + BODACC)",bot:"Bot"},U2={rss:"Lit chaque matin des centaines de médias et de flux spécialisés pour repérer les sociétés qui bougent dans votre secteur.",editorial:"Suit en continu les médias experts et lettres spécialisées de votre secteur pour repérer les sociétés dont on commence à parler.",google_news:"Balaie l'actualité mondiale en continu pour capter les sociétés qui font parler d'elles (levées, lancements, nominations).",google_alerts:"Surveille des mots-clés précis sur tout le web et remonte chaque société correspondante dès qu'elle apparaît.",pappers_fr:"Interroge les registres officiels français (SIRENE, codes d'activité) pour trouver des sociétés par métier, en temps réel.",crt:"Détecte les toutes nouvelles s
68ociétés dès la mise en ligne de leur site web â un signal très précoce, avant tout le monde.",github:"Détecte les sociétés tech par l'activité de leurs développeurs â un signal très en amont, avant qu'elles ne fassent parler d'elles.",hn:"Scrute Hacker News, le forum de référence des fondateurs tech, pour repérer les projets qui émergent en premier.",fundraising:"Repère les sociétés qui viennent de lever des fonds â le moment précis où elles accélèrent et deviennent intéressantes.",backfill:"Repasse sur les périodes passées pour rattraper les sociétés qui auraient pu passer entre les mailles du filet.",websets:"Construit des listes de sociétés sur mesure à partir d'une simple description, en explorant tout le web.",parallel:"Cherche chaque matin d'autres sociétés qui collent à votre thèse, en plus des moteurs déjà en place.",websets_engine:"Construit des listes de sociétés sur mesure à partir d'une simple description, en explorant tout le web.",linkedin_posts:"Analyse les publications LinkedIn pour repérer les sociétés et dirigeants qui annoncent quelque chose d'intéressant.",linkedin_jobs:"Lit les offres d'emploi LinkedIn : une société qui recrute massivement dans un domaine trahit sa stratégie et sa croissance.",exa_semantic:"Recherche sémantique sur tout le web : vous décrivez ce que vous cherchez en langage naturel, et il trouve les sociétés qui y ressemblent.",exa_similar:"Partez d'une société que vous aimez, et il trouve toutes celles qui lui ressemblent sur le web.",crunchbase_search:"Interroge la base mondiale des startups et de leurs financements pour trouver des sociétés par profil.",other_custom:"Moteurs branchés spécialement pour votre thèse â chaque signal utile peut devenir un moteur sur mesure.",manual_paste:"Les sociétés que vous ajoutez vous-même à la main, évaluées selon vos critères exactement comme les autres.",find_similar_qualified:"Part des sociétés que vous avez déjà retenues pour en trouver d'autres, très proches, partout sur le web.",daily_news:"Relit l'actualité du jour à travers le prisme exact de votre thèse pour n'en garder que ce qui vous concerne.",alumni:"Suit les diplômés des meilleures écoles pour repérer ceux qui viennent de fonder une société.",competitor_exodus:"Détecte les départs de talents des sociétés concurrentes â souvent le signe d'une nouvelle société en création.",hackernews:"Scrute Hacker News, le forum de référence des fondateurs tech, pour repérer les projets qui émergent en premier.",crt_sh:"Détecte les toutes nouvelles s
68ociétés dès la mise en ligne de leur site web â un signal très précoce, avant tout le monde.",pappers:"Interroge les registres officiels français (SIRENE, codes d'activité) pour trouver des sociétés par métier, en temps réel.",pappers_intl:"Interroge les registres d'entreprises internationaux pour trouver des sociétés par pays et par activité, en temps réel.",opencorporates:"Explore la plus grande base mondiale de registres d'entreprises pour retrouver des sociétés officielles partout dans le monde.",tavily:"Recherche web en temps réel : interroge tout le web à la volée pour capter les sociétés qui collent à votre thèse.",registre_gouv:"Interroge le registre officiel des entreprises françaises (recherche-entreprises) pour trouver des sociétés par activité.",local:"Trouve les commerces de proximité de votre métier, ville par ville. Sur Google Maps : les magasins physiques avec leur note, leurs avis et leur site (tri « leaders » ou « à reprendre »). Via le BODACC officiel : les affaires acquérables â liquidations, ventes & cessions de fonds, cessations (locaux à récupérer). Tourne à la demande (Google Maps payant) ; option radar quotidien gratuit via BODACC.",hunter:"Retrouve les coordonnées professionnelles des sociétés (emails, domaines) pour identifier les bons interlocuteurs à contacter."},V2={rss:"Reads hundreds of media outlets and specialist feeds every morning to spot the companies moving in your sector.",editorial:"Continuously follows the expert media and specialist newsletters in your sector to catch companies just starting to get noticed.",google_news:"Sweeps world news in real time to catch companies making headlines (raises, launches, appointments).",google_alerts:"Watches precise keywords across the whole web and surfaces every matching company the moment it appears.",pappers_fr:"Queries the official French registries (SIRENE, activity codes) to find companies by line of business, in real time.",crt:"Detects brand-new companies the moment their website goes live â a very early signal, ahead of everyone else.",github:"Detects tech companies from their developers' activity â a very early signal, before they make any noise.",hn:"Scans Hacker News, the go-to forum for tech founders, to catch the projects emerging first.",fundraising:"Spots companies that have just raised funds â the exact moment they accelerate and become interesting.",backfill:"Re-combs past periods to catch companies that might have slipped through the cracks.",websets:"Builds tailored company lists from a simple description, exploring the whole web.",parallel:"Each morning, finds more companies that fit your thesis, on top of the engines already running.",websets_engine:"Builds tailored company lists from a simple description, exploring the whole web.",linkedin_posts:"Reads LinkedIn posts to spot the companies and executives announcing something worth knowing.",linkedin_jobs:"Reads LinkedIn job ads: a company hiring heavily in one area reveals its strategy and its growth.",exa_semantic:"Semantic search across the whole web: describe what you're looking for in plain language, and it finds the companies that match.",exa_similar:"Start from a company you like, and it finds every similar one across the web.",crunchbase_search:"Queries the global database of startups and their funding to find companies by profile.",other_custom:"Engines wired specifically for your thesis â any useful signal can become a custom engine.",manual_paste:"The companies you add yourself by hand, scored against your criteria exactly like the rest.",find_similar_qualified:"Starts from companies you've already kept to find others, very close to them, across the web.",daily_news:"Re-reads today's news through the exact lens of your thesis, keeping only what concerns you.",alumni:"Tracks graduates of top schools to spot those who have just founded a company.",competitor_exodus:"Detects talent leaving competitor companies â often the sign of a new company being born.",hackernews:"Scans Hacker News, the go-to forum for te
68ch founders, to catch the projects emerging first.",crt_sh:"Detects brand-new companies the moment their website goes live â a very early signal, ahead of everyone else.",pappers:"Queries the official French registries (SIRENE, activity codes) to find companies by line of business, in real time.",pappers_intl:"Queries international company registries to find companies by country and activity, in real time.",opencorporates:"Explores the world's largest database of company registries to surface official companies anywhere in the world.",tavily:"Real-time web search: queries the whole web on the fly to catch companies matching your thesis.",registre_gouv:"Queries the official French company register (recherche-entreprises) to find companies by activity.",local:"Finds the main-street businesses in your trade, town by town. On Google Maps: the physical storefronts with their rating, reviews and website (sort 'leaders' or 'turnaround'). Via the official BODACC bulletin: acquirable businesses â insolvencies, sales & transfers of goodwill, closures (premises to take over). Runs on demand (Google Maps is paid); optional free daily BODACC radar.",hunter:"Finds companies' professional contact details (emails, domains) to identify the right people to reach."};function H2(t){const n=(t||"").trim().toLowerCase();if(!n)return"";const r=Ah[n]||Ah[n+"_engine"];return r||n.replace(/_/g," ").split(" ").filter(Boolean).map(i=>i.charAt(0).toUpperCase()+i.slice(1)).join(" ")}function Y2(t,n){const r=(t||"").trim().toLowerCase(),i=n?V2:U2;return i[r]||i[r+"_engine"]||""}const G2=/^(?:pass\s+)?if and only if\b/i,W2=/^(?:step\s+)?[a-e1-6]\s*[.):]?$/i;function Q2(t){return(t||"").replace(/\s+/g," ").trim().replace(/^(?:pass\s+)?if and only if(?:\s+[a-e](?:\s+and\s+[a-e])*)\s*\.?\s*/i,"")}function Z2(t){const n=/\b(?:STEP|ÃTAPE|ETAPE)\s*(\d+)\s*[ââ\-:.)]\s*/gi,r=[];let i;for(;i=n.exec(t);)r.push({start:i.index,textStart:i.index+i[0].length});if(r.length<2)return null;const s="ABCDEFGH";return r.map((a,o)=>t.slice(a.textStart,o+1<r.length?r[o+1].start:t.length).trim()).map(a=>a.replace(/\s*\(([a-h])\)\s*/gi,(o,c)=>` 69(${c.toLowerCase()}) `).trim()).filter(a=>a.length>8).map((a,o)=>({k:s[o]||"",t:a}))}function K2(t){const n=Q2(t);if(!n)return[];const r=Z2(n);if(r&&r.length>=2)return r;const i=/(?:^|\s)(?:step\s+)?([a-e])[.):]\s+/gi,s=[];let a;for(;a=i.exec(n);)s.push({k:a[1].toUpperCase(),start:a.index,textStart:a.index+a[0].length});return s.length>=2?s.map((o,c)=>({k:o.k,t:n.slice(o.textStart,c+1<s.length?s[c+1].start:n.length).trim()})).filter(o=>o.t.length>8):n?[{k:"",t:n}]:[]}function Lx(t){if(!(t!=null&&t.length))return[];const r=t.map(s=>({k:(s.k||"").replace(/^STEP\s+/i,"").trim().toUpperCase(),t:(s.t||"").trim()})).filter(s=>s.t&&!G2.test(s.t)&&!W2.test(s.t)).filter(s=>/^[A-E]$/.test(s.k)&&s.t.length>20);if(r.length>=2)return r;const i=t.map(s=>{const a=(s.k||"").trim(),o=(s.t||"").trim();return a&&o&&!o.toUpperCase().startsWith(`${a}.`)&&!o.toUpperCase().startsWith(`${a} `)?`${a}. ${o}`:[a,o].filter(Boolean).join(" ")}).join(" ");return K2(i)}const J2=/\b(company core business|aligns with at least one angle|primary operations or hq|pre-revenue|brokerage|established broker|insurtech|at least one angle)\b/i,$2=[[/^company core business is\s+/i,"Lâactivité principale est "],[/^aligns with at least one angle:\s*/i,"Correspond à au moins un de ces axes : "],[/^primary operations or hq in\s+/i,"Siège ou activité principale : "],[/^target is an established\s+/i,"La cible est un "],[/,?\s*not pre-revenue startups?\.?$/i,", pas une start-up sans revenus."],[/\bor InsurTech with recurring premium portfolio/i," ou une InsurTech au portefeuille de primes récurrentes"],[/\binternational health insurance brokerage/i,"le courtage dâassurance santé internationale"],[/\bexpat medical coverage/i,"la couverture médicale des expatriés"],[/\bcross-border health advisory/i,"le conseil santé transfrontalier"],[/\bspecialized social protection for globally mobile populations/i,"la protection sociale des populations mobiles"],[/\bSME and multinational group health for expatriates/i,"santé groupe PME et multinationales pour expatriés"],[/\bgroup health for missions and international organizations/i,"santé groupe pour missions et organisations internationales"],[/\bstudent or young-professional mobility health/i,"santé mobilité étudiants et jeunes professionnels"],[/\bLAMal\/CMU\/EU cross-border compliance advisory/i,"conseil conformité LAMal / CMU / UE"],[/\bcross-border compliance advisory/i,"conseil en conformité transfrontalière"],[/\bdiplomatic mission contracts/i,"contrats de missions diplomatiques"],[/\bstudent and
69young expat programs/i,"programmes étudiants et jeunes expatriés"],[/\bexpat group health brokerage/i,"courtage santé groupe expatriés"],[/\bor another country with significant expat or diplomatic hub/i,"ou un autre pays avec un hub dâexpatriés ou diplomatique"],[/\bestablished broker/i,"courtier établi"]];function Ks(t,n="fr"){let r=(t||"").replace(/_/g," ").replace(/[^\S\n]+/g," ").replace(/ *\n */g,` 70`).trim();if(n!=="fr"||!J2.test(r))return r;for(const[i,s]of $2)r=r.replace(i,s);return r.replace(/[^\S\n]+/g," ").trim()}const X2=/(?:(?:STEP|ÃTAPE|ETAPE)\s*(?:\d+\s*[.\-:(]?\s*)?\(?\s*|(?:^|[\n;])\s*)([A-Da-d])\s*\)?\s*(?:is\s+met\s+as\s*|est\s+(?:satisfait|rempli|coch[ée])\w*\s*(?:car|comme|si|parce\s+que)?\s*)?[:.·ââ\-]?\s*/gi,eb=/(?:^|[\n.]\s*)([A-Da-d])\s*[ââ\-]\s+/g;function Sh(t,n){const r=[];n.lastIndex=0;let i;for(;i=n.exec(t);)r.push({k:i[1].toUpperCase(),start:i.index,textStart:i.index+i[0].length});for(let s=r.length-1;s>=0;s--)/^\s*(?:,|and\b|et\b|&)/i.test(t.slice(r[s].textStart,r[s].textStart+6))&&r.splice(s,1);if(!r.length)return[];if(r.length===1){if(t.length>1200)return[];if(!/(?:STEP|ÃTAPE|ETAPE)\s*[A-D]|[A-D]\s*[ââ\-]/.test(t))return[]}return r.map((s,a)=>({k:s.k,t:t.slice(s.textStart,a+1<r.length?r[a+1].start:t.length).replace(/^(is met as|est satisfait\w*\s*(?:car|comme|parce que)?)\s*/i,"").replace(/^[·ââ\-\s]+/,"").trim()})).filter(s=>s.t.length>8)}function tb(t){const n=(t||"").trim();if(!n)return[];const r=Sh(n,X2);return r.length?r:Sh(n,eb)}function $l(t){const n=Number(t);return Number.isFinite(n)?n<=1?`${Math.round(n*100)} %`:`${n} %`:""}function vx(t,n){var u;if(!t)return null;const r=t.financial_model_config||{},i=t.entry_gates||{},s=t.meta||{},a=String(r.mode||i.mode||s.mode||"").toUpperCase(),o=a==="MA"?n?"Croissance externe (M&A)":"External growth (M&A)":a==="VC"?n?"Capital-risque":"Venture capital":a==="PROSPECTION"?n?"Prospection / vente":"Sales / prospecting":a,c=String(r.ma_submode||""),l=a==="VC"?r.vc_config:a==="LBO"||a==="MA"&&c==="lbo_pure"?r.lbo_config:a==="MA"?r.ma_config:null,d=[];l&&(l.hurdle_irr!=null&&d.push({k:"Hurdle IRR",t:$l(l.hurdle_irr)}),l.hurdle_moic!=null&&d.push({k:"Hurdle MOIC",t:`${l.hurdle_moic}Ã`}),l.hurdle_roi!=null&&d.push({k:"Hurdle ROI",t:$l(l.hurdle_roi)}),l.hold_period_years!=null&&d.push({k:n?"Horizon de détention":"Holding period",t:`${l.hold_period_years} ${n?"ans":"years"}`}),l.max_leverage!=null&&d.push({k:n?"Levier maximal":"Maximum leverage",t:`${l.max_leverage}Ã`}),l.min_dscr!=null&&d.push({k:"DSCR minimum",t:`${l.min_dscr}Ã`}),l.hurdle_absolute_gain_eur!=null&&d.push({k:n?"Plus-value minimale":"Absolute gain hurdle",t:`${Number(l.hurdle_absolute_gain_eur).toLocaleString(n?"fr-FR":"en-GB")} â¬`}));const p=r.confidence_thresholds;if(p&&typeof p=="object"&&!Array.isArray(p))for(const[g,f]of Object.entries(p)){if(f==null||f==="")continue;const L=typeof f=="number"&&$l(f)||String(f);d.push({k:g.replace(/_/g," "),t:L})}return!o&&!i.target_range&&!r.business_model_archetype&&!d.length?null:{mode:a==="MA"&&c==="strategic_acquirer"?n?"Acquéreur stratég
70ique":"Strategic acquirer":a==="MA"&&c==="lbo_pure"||a==="LBO"?"LBO":o,modelKind:a==="VC"?"VC":c==="lbo_pure"||a==="LBO"?"LBO":a==="MA"?"MA":a,horizon:Number(r.synergy_horizon_years||((u=r.acquirer_context)==null?void 0:u.synergy_horizon_years))||void 0,range:String(i.target_range||r.target_range||""),archetype:String(r.business_model_archetype||r.sector_profile||"").replace(/_/g," "),hurdles:d}}const qi={fr:{hypTitle:"Notre hypothèse sur votre stratégie",hypSub:"Toute la sélection en découle. Si elle est à côté, corrigez-la ci-dessous â la recherche est réalignée et vous recevez une sélection corrigée.",hypSubPour:"Toute la sélection en découle.",profilsTitle:"Vos angles dâacquisition",profilsSub:"Les familles de sociétés que Stan traque en continu â chaque angle se déplie.",lookFor:"Ce que nous recherchons",ruleOut:"Ce que nous écartons",gateTitle:"Ce qui fait retenir une société",gateSub:"Stan ne garde une cible que si elle coche tous ces points. Sinon, il lâécarte.",evalKept:"Stan a retenu cette société car :",evalOut:"Stan a écarté cette société car :",evalKeptNeutral:"Retenue car :",evalOutNeutral:"Ãcartée car :",enginesTitle:"Les moteurs de sourcing",enginesToggle:"Tout afficher / tout masquer",enginesSub:"Chaque matin, Stan nâinterroge pas le web en vrac. Il lance les moteurs que votre thèse a branchés, chacun avec sa requête et ses réglages. Dépliez un moteur pour voir ce quâil fait, et le paramétrage actuel.",enginesQuery:"Réglage actuel",enginesFound:t=>t<=0?"En veille sur cette fenêtre.":`${t} société${t>1?"s":""} trouvée${t>1?"s":""} récemment.`,memoTitle:"Ce que la thèse fabrique : le mémo sur mesure",memoSub:"Quand une société passe le crible, Stan ne rédige pas une fiche générique. Il compose un mémo dâinvestissement calé sur cette thèse â vos angles, vos seuils, votre acquéreur. Voici, de A à Z, ce quâelle produit. Lisez-le avant de demander une modification.",memoSecTitle:"Les sections du mémo",memoSecA:"Synergies",memoSecABody:"Le mémo chiffre ce que la cible apporte à votre groupe : cross-sell, coûts, distribution, géographie â à lâhorizon fixé dans la thèse. Ce nâest pas un paragraphe marketing : ce sont des leviers que Stan peut défendre en comité.",memoSecB:"Conviction de Stan",memoSecBBody:"Stan écrit pourquoi la société entre â ou non â dans vos angles, avec les preuves quâil a trouvées. Ce nâest pas un résumé du site web : câest un avis dâinvestissement, dans vos mots.",memoSecC:"Le verdict",memoSecCBody:"à la fin du mémo, Stan pose lâun de ces quatre mots. Câest ce verdict que vous tranchez ensuite par oui ou par non.",memoPass:"PASS â écartée : ce nâest pas pour vous.",memoConsider:"CONSIDER â intéressante, des pièces manquent encore.",memoMonitor:"MONITOR â pas maintenant ; Stan vous alerte si ça bouge.",memoCall:"CALL PENDING â sa meilleure trouvaille : à vous de dire oui ou non.",kpiTitle:"Les seuils financiers et le P&L",kpiSub:"La thèse porte aussi le modèle financier. Stan sâen sert pour projeter un compte de résultat et calculer le ROI de lâopération. Tant que ces seuils ne sont pas franchis, il ne peut pas conclure « CALL ». Les modifier, câest changer le verdict â pas seulement le texte.",kpiMode:"Mode",kpiRange:"Fourchette visée",kpiArch:"Archétype économique"},en:{hypTitle:"Our hypothesis about your strategy",hypSub:"The whole selection follows from it. If it is off, correct it below â the search is realigned and you get a corrected selection.",hypSubPour:"The whole selection follows from it.",profilsTitle:"Your acquisition angles",profilsSub:"The families of companies Stan tracks continuously â each angle unfolds.",lookFor:"What we look for",ruleOut:"What we rule out",gateTitle:"What it takes to be kept",gateSub:"Stan keeps a company only if it ticks every point. Otherwise he rules it out.",evalKept:"Stan kept this company because:",evalOut:"Stan ruled this company out because:",evalKeptNeutral:"Kept because:",evalOutNeutral:"Ruled out because:",enginesTitle:"Sourcing engines",enginesToggle:"Show all / hide all",enginesSub:"Every morning Stan does not scrape the web at large. He runs the engines your thesis wired, each with its query and settings. Unfold an engine to see what it does, and the current parameters.",enginesQuery:"Current settings",enginesFound:t=>t<=0?"On standby in this window.":`${t} compan${t>1?"ies":"y"} found recently.`,memoTitle:"What the thesis builds: the tailored memo",memoSub:"When a company clears the screen, Stan does not write a generic brief. He composes an investment memo locked to this thesis â your angles, your hurdles, your acquirer. This is, A to Z, what it produces. Read it before asking for an edit.",memoSecTitle:"Memo sections",memoSecA:"Synergies",memoSecABody:"The memo sizes what the target brings to your group: cross-sell, costs, distribution, geography â on the horizon set in the thesis. Not a marketing paragraph: levers Stan can defend in committee.",memoSecB:"Stanâs conviction",memoSecBBody:"Stan writes why the company fits â or does not â your angles, with the evidence he found. Not a website summary: an investment view, in y
70our words.",memoSecC:"The verdict",memoSecCBody:"At the end of the memo Stan puts one of these four words. That is the verdict you then answer with yes or no.",memoPass:"PASS â ruled out: this is not for you.",memoConsider:"CONSIDER â interesting, pieces are still missing.",memoMonitor:"MONITOR â not now; Stan alerts you if it moves.",memoCall:"CALL PENDING â his best find: yours to say yes or no.",kpiTitle:"Financial hurdles and the P&L",kpiSub:"The thesis also carries the financial model. Stan uses it to project a P&L and compute the ROI of the deal. Until these hurdles are cleared he cannot conclude âCALLâ. Changing them changes the verdict â not just the copy.",kpiMode:"Mode",kpiRange:"Target range",kpiArch:"Economic archetype"}};function cd({gate:t,lang:n}){return t.length===1&&!t[0].k?e.jsx("p",{className:"pp-th-gate1",children:Ks(t[0].t,n)}):e.jsx("ol",{className:"pp-th-gate",children:t.map(r=>e.jsxs("li",{children:[r.k&&e.jsx("b",{children:r.k}),e.jsx("span",{children:Ks(r.t,n)})]},r.k||r.t))})}function F6({text:t,kept:n=!0,lang:r="fr",neutral:i=!1}){const s=qi[r]||qi.fr,a=tb(t);if(!t.trim())return null;const o=a.filter(c=>c.k&&c.t);return e.jsxs("div",{className:"pp-th pp-th-eval"+(n?"":" out"),children:[e.jsx("style",{children:Po}),e.jsx("p",{className:"pp-th-eval-h",children:i?n?s.evalKeptNeutral:s.evalOutNeutral:n?s.evalKept:s.evalOut}),o.length>=1?e.jsx("ol",{className:"pp-th-gate",children:o.map(c=>e.jsxs("li",{children:[c.k&&e.jsx("b",{children:c.k}),e.jsx("span",{children:Ks(c.t,r)})]},c.k))}):e.jsx("p",{className:"pp-th-gate1",children:Ks(t,r)})]})}function O6({criteria:t,lang:n="fr",layout:r="stack"}){const i=qi[n]||qi.fr,s=Lx(t==null?void 0:t.gate);return s.length?r==="tiles"?e.jsxs("div",{className:"pp-th pp-th-tiles",children:[e.jsx("style",{children:Po}),e.jsxs("div",{className:"pp-th-tiles-h",children:[e.jsx("h4",{className:"pp-th-h",children:i.gateTitle}),e.jsx("p",{className:"pp-th-note",children:i.gateSub})]}),e.jsx("ol",{className:"pp-th-tiles-row",children:s.map(a=>e.jsxs("li",{children:[a.k&&e.jsx("b",{children:a.k}),e.jsx("span",{children:Ks(a.t,n)})]},a.k||a.t))})]}):e.jsxs("div",{className:"pp-th pp-th-side",children:[e.jsx("style",{children:Po}),e.jsx("h4",{className:"pp-th-h",children:i.gateTitle}),e.jsx("p",{className:"pp-th-note",children:i.gateSub}),e.jsx(cd,{gate:s,lang:n})]}):null}function ll({criteria:t,lang:n="fr",variant:r="default",hideGate:i=!1,openFirst:s=!0,exclusive:a=!1,section:o="all",engines:c,memo:l,onEditFinancial:d}){var w,S,E;const p=qi[n]||qi.fr,u=t||{},g=o==="all"||o==="hyp",f=o==="all"||o==="angles",L=i||o!=="all"?[]:Lx(u.gate),v=r==="pour"?p.hypSubPour:p.hypSub,y=o==="all"&&r!=="pour"||o==="engines",h=o==="all"&&r!=="pour"||o==="memo",b=n==="en",x=l||vx({financial_model_config:t.financial||{mode:t.mode}},!b),A=(x==null?void 0:x.modelKind)==="VC"?b?"VC: revenue growth, cash needs and runway; investment, ownership and dilution through exit determine the fundâs MOIC, IRR and capital gain. Compare returns with your hurdles in each scenario.":"VC : croissance du chiffre dâaffaires, besoins de trésorerie et autonomie ; ticket, participation et dilution jusquâà la sortie déterminent le MOIC, le TRI et la plus-value du fonds. Les rendements sont comparés à vos seuils dans chaque scénario.":(x==null?void 0:x.modelKind)==="LBO"?b?"LBO: operating P&L, cash flow, debt service and deleveraging; entry and exit valuations determine equity MOIC and IRR. Debt capacity and downside scenarios are assessed separately.":"LBO : P&L opérationnel, cash-flow, service de la dette et désendettement ; les valorisations dâentrée et de sortie déterminent le MOIC et le TRI des fonds propres. La capacité dâendettement et les scénarios défavorables sont examinés séparément.":(x==null?void 0:x.modelKind)==="MA"?b?"Strategic acquisition: standalone P&L, then revenue and cost synergies, capture risk and integration costs. Total ROI, MOIC, IRR, payback and maximum acquisition price use the targetâs cash flows plus net synergies.":"Acquisition stratégique : P&L de la cible seule, puis synergies de revenus et de coûts, risque de réalisation et coûts dâintégration. ROI total, MOIC, TRI, délai de retour et prix maximal dâacquisition utilisent les cash-flows de la cible et les synergies nettes.":b?"The financial method follows the saved thesis mode.":"La méthode financière suit le mode enregistré dans la thèse.";return e.jsxs("div",{className:"pp-th",children:[e.jsx("style",{children:Po}),g&&u.lead&&e.jsxs("section",{children:[e.jsx("h4",{className:"pp-th-h",children:p.hypTitle}),e.jsx("p",{className:"pp-th-lead",children:u.lead.replace(/\s+([:;!?»])/g," $1")}),!!((w=u.points)!=null&&w.length)&&e.jsx("ul",{className:"pp-th-pts",children:u.points.map(j=>e.jsx("li",{children:j},j))}),e.jsx("p",{className:"pp-th-note",children:v})]}),f&&!!((S=u.angles)!=null&&S.length)&&e.jsxs("section",{children:[e.jsx("h4",{className:"pp-th-h",children:p.profilsTitle}),e.jsx("p",{className:"pp-th-note",children:u.method||p.profilsSub}),u.angles.map((j,O)=>{var k,_;return e.jsxs("details",{className:"pp-th-prof",open:s&&O===0,name:a?"pp-th-angles":void 0,children:[e.jsx("summary",{children:j.title}),j.why&&e.jsx("p",{className:"pp-th-why",children:j.why}),e.jsxs("div",{className:"pp-th-lo",children:[!!((k=j.look)!=null&&k.length)&&e.jsxs("div",{children:[e.jsx("em",{children:p.lookFor}),e.jsx("ul",{children:j.look.map(N=>e.jsx("li",{children:N},N))})]}),!!((_=j.out)!=null&&_.length)&&e.jsxs("div",{className:"pp-th-ko",children:[e.jsx("em",{children:p.ruleOut}),e.jsx("ul",{children:j.out.map(N=>e.jsx("li",{children:N},N))})]})]})]},j.title)})]}),!!L.length&&(r==="pour"?e.jsxs("details",{className:"pp-th-gatebox",children:[e.jsxs("summary",{children:[e.jsx("span",{className:"pp-th-h",children:p.gateTitle}),e.jsx("span",{className:"pp-th-note",children:p.gateSub})]}),e.jsx(cd,{gate:L,lang:n})]}):e.jsxs("section",{children:[e.jsx("h4",{className:"pp-th-h",children:p.gateTitle}),e.jsx("p",{className:"pp-th-note",children:p.gateSub}),e.jsx(cd,{gate:L,lang:n})]})),y&&e.jsxs("section",{children:[e.jsx("h4",{className:"pp-th-h",children:p.enginesTitle}),e.jsx("p",{className:"pp-th-note",children:p.enginesSub}),!!(c!=null&&c.length)&&e.jsxs("details",{className:"pp-th-engbox",children:[e.jsxs("summary",{children:[p.enginesToggle," · ",c.length]}),c.map(j=>{const O=[...j.chips||[],...j.more||[]],k=Y2(j.key,b)||(b?"Engine wired for your thesis.":"Moteur branché pour votre thèse.");return e.jsxs("details",{className:"pp-th-prof",name:a?"pp-th-engines":void 0,children:[e.jsx("summary",{children:H2(j.key)}),e.jsx("p",{className:"pp-th-why",children:k}),e.jsx("p",{className:"pp-th-note",children:p.enginesFound(j.sourced||0)}),!!O.length&&e.jsxs("div",{className:"pp-th-engq",children:[e.jsx("em",{children:p.enginesQuery}),e.jsx("ul",{className:"pp-th-chips",children:O.map(_=>e.jsx("li",{children:_},_))}),j.note&&e.jsx("p",{className:"pp-th-note",children:j.note})]})]},j.key)})]})]}),h&&e.jsxs("section",{children:[e.jsx("h4",{className:"pp-th-h",children:p.memoTitle}),e.jsx("p",{className:"pp-th-note",children:p.memoSub}),e.jsxs("details",{className:"pp-th-prof",open:s&&o!=="memo",children:[e.jsx("summary",{children:p.memoSecTitle}
70),e.jsxs("ol",{className:"pp-th-gate pp-th-memosecs",children:[e.jsxs("li",{children:[e.jsx("b",{children:"A"}),e.jsxs("span",{children:[e.jsxs("strong",{children:[(x==null?void 0:x.modelKind)==="VC"?b?"Investment case":"Thèse dâinvestissement":(x==null?void 0:x.modelKind)==="LBO"?"LBO":p.memoSecA,"."]})," ",(x==null?void 0:x.modelKind)==="MA"||!(x!=null&&x.modelKind)?p.memoSecABody:A]})]}),e.jsxs("li",{children:[e.jsx("b",{children:"B"}),e.jsxs("span",{children:[e.jsxs("strong",{children:[p.memoSecB,"."]})," ",p.memoSecBBody]})]}),e.jsxs("li",{children:[e.jsx("b",{children:"C"}),e.jsxs("span",{children:[e.jsxs("strong",{children:[p.memoSecC,"."]})," ",p.memoSecCBody,e.jsx("p",{className:"pp-th-v pass",children:p.memoPass}),e.jsx("p",{className:"pp-th-v consider",children:p.memoConsider}),e.jsx("p",{className:"pp-th-v monitor",children:p.memoMonitor}),e.jsx("p",{className:"pp-th-v call",children:p.memoCall})]})]})]})]}),e.jsxs("details",{className:"pp-th-prof",children:[e.jsx("summary",{children:p.kpiTitle}),e.jsx("p",{className:"pp-th-why",children:A}),e.jsx("p",{className:"pp-th-note",children:b?"Both flash and detailed memos use these saved settings. The P&L separates sourced facts, estimates and scenarios. Financial thresholds inform the investment verdict; they do not replace the qualitative analysis.":"Les mémos éclair et détaillés utilisent ces mêmes réglages. Le P&L distingue faits sourcés, estimations et scénarios. Les seuils financiers éclairent le verdict dâinvestissement ; ils ne remplacent pas lâanalyse qualitative."}),x!=null&&x.mode||x!=null&&x.range||x!=null&&x.archetype||x!=null&&x.hurdles&&x.hurdles.length?e.jsxs("ol",{className:"pp-th-gate",children:[x.mode&&e.jsxs("li",{children:[e.jsx("b",{children:"1"}),e.jsxs("span",{children:[e.jsxs("strong",{children:[p.kpiMode,"."]})," ",x.mode]})]}),x.range&&e.jsxs("li",{children:[e.jsx("b",{children:"2"}),e.jsxs("span",{children:[e.jsxs("strong",{children:[p.kpiRange,"."]})," ",x.range]})]}),x.archetype&&e.jsxs("li",{children:[e.jsx("b",{children:"3"}),e.jsxs("span",{children:[e.jsxs("strong",{children:[p.kpiArch,"."]})," ",x.archetype]})]}),!!x.horizon&&e.jsxs("li",{children:[e.jsx("b",{children:"4"}),e.jsxs("span",{children:[e.jsxs("strong",{children:[b?"Synergy horizon":"Horizon des synergies","."]})," ",x.horizon," ",b?"years":"ans"]})]}),(x.hurdles||[]).map((j,O)=>e.jsxs("li",{children:[e.jsx("b",{children:String.fromCharCode(65+O)}),e.jsxs("span",{children:[e.jsxs("strong",{children:[j.k,"."]})," ",j.t]})]},j.k))]}):e.jsx("p",{className:"pp-th-note",children:b?"Financial settings unavailable. No threshold is assumed.":"Paramètres financiers indisponibles. Aucun seuil nâest supposé."}),e.jsx("p",{className:"pp-th-note",children:b?"IRR: annualised return. MOIC: proceeds / invested capital. ROI: net gain / investment. Missing hurdles are not invented.":"TRI : rendement annualisé. MOIC : montants reçus / capital investi. ROI : gain net / investissement. Un seuil absent nâest pas inventé."}),!((E=x==null?void 0:x.hurdles)!=null&&E.length)&&e.jsx("p",{className:"pp-th-note",children:b?"No explicit financial hurdle is available in the saved thesis.":"Aucun seuil financier explicite nâest disponible dans la thèse enregistrée."}),d&&e.jsx("button",{type:"button",onClick:d,children:b?"Adjust my financial settings":"Ajuster mes paramètres financiers"})]})]})]})}const Po=` 71.pp-th { font-size: 12.5px; line-height: 1.5; color: #16233A; } 72.pp-th section { margin-bottom: 18px; } 73.pp-th section:last-child { margin-bottom: 4px; } 74.pp-th-h { 75 margin: 0 0 7px; font-size:12px; font-weight:600; color: #0E7F3F; 76} 77.pp-th-lead { margin: 0 0 8px; font-size: 12.5px; font-weight: 400; color: #0F1D33; } 78.pp-th-pts { margin: 0 0 8px; padding-left: 1.25em; font-size: 12.5px; list-style: disc; list-style-position: outside; } 79.pp-th-pts li { margin-bottom: 4px; font-size: 12.5px; display: list-item; } 80.pp-th-note { margin: 0 0 10px; font-size: 12.5px; color: #7a8694; } 81.pp-th-prof { 82 border: 1px solid #e4ebf3; border-radius: 8px; 83 padding: 9px 12px; margin-bottom: 7px; background: #fbfdfc; 84} 85.pp-th-prof > summary { 86 cursor: pointer; font-weight: 600; color: #0F1D33; font-size: 13.5px; 87 list-style: none; 88} 89.pp-th-prof > summary::-webkit-details-marker { display: none; } 90.pp-th-prof > summary::before { content: '⸠'; color: #12A150; font-weight: 700; } 91.pp-th-prof[open] > summary::before { content: 'â¾ '; } 92.pp-th-why { margin: 7px 0 8px; font-size: 12.5px; color: #4B5E78; } 93.pp-th-lo { display: grid; gap: 10px; } 94@media (min-width: 520px) { .pp-th-lo { grid-template-columns: 1fr 1fr; } } 95.pp-th-lo em { 96 display: block; margin-bottom: 3px; font-style: normal; 97 font-size:12px; font-weight:600; color: #12A150; 98} 99.pp-th-ko em { color: #C0353A; } 100.pp-th-lo ul { margin: 0; padding-left: 1.2em; font-size: 12.5px; list-style: disc; } 101.pp-th-lo li { margin-bottom: 3px; display: list-item; } 102.pp-th-gate1 { 103 margin: 0; padding: 11px 13px; border-radius: 8px; 104 background: #F9FBFD; border: 1px solid #dcece2; font-size: 13px; 105} 106.pp-th-gate { margin: 0; padding: 0; list-style: none; display: flex; flex-direction: column; gap: 8px; } 107.pp-th-gate li { 108 margin: 0; padding: 11px 13px; border-radius: 8px; 109 background: #F9FBFD; border: 1px solid #dcece2; font-size: 13px; 110 display: flex; gap: 10px; align-items: flex-start; line-height: 1.5; 111} 112.pp-th-gate b { 113 flex: none; width: 22px; height: 22px; margin: 1px 0 0; margin-right: 0; 114 border-radius: 6px; background: #0E7F3F; color: #fff; 115 font-size: 11px; display: inline-flex; align-items: center; justify-content: center; 116} 117.pp-th-gate span { flex: 1; min-width: 0;
117 overflow-wrap: anywhere; word-break: break-word; white-space: pre-line; } 118.pp-th-eval { min-width: 0; max-width: 100%; overflow-wrap: anywhere; word-break: break-word; box-sizing: border-box; } 119.pp-th-eval-h { margin: 0 0 10px; font-size: 13px; font-weight: 700; color: #0E8A44; } 120.pp-th-eval.out .pp-th-eval-h { color: #9B1C1C; } 121.pp-th-eval.out .pp-th-gate b { background: #C0353A; } 122.pp-th-eval.out .pp-th-gate li { background: #FDF6F6; border-color: #F0D0D0; } 123.pp-th-gatebox { margin: 10px 0 0; padding: 10px 0 0; border: 0; border-top: 1px solid #E3E8F0; border-radius: 0; background: transparent; } 124.pp-th-gatebox > summary { cursor: pointer; list-style: none; } 125.pp-th-gatebox > summary::-webkit-details-marker { display: none; } 126.pp-th-gatebox > summary .pp-th-h { display: inline; margin: 0; font-size: 12.5px; font-weight: 600; color: #4B5E78; } 127.pp-th-gatebox > summary .pp-th-h::before { content: '⸠'; color: #7A8694; font-weight: 700; } 128.pp-th-gatebox[open] > summary .pp-th-h::before { content: 'â¾ '; } 129.pp-th-gatebox > summary .pp-th-note { display: inline; margin: 0 0 0 6px; font-size: 12px; } 130.pp-th-gatebox[open] .pp-th-gate, .pp-th-gatebox[open] .pp-th-gate1 { margin-top: 10px; } 131.pp-th-side .pp-th-h { margin-bottom: 4px; } 132.pp-th-side .pp-th-note { margin-bottom: 10px; font-size: 12px; line-height: 1.4; } 133.pp-th-side .pp-th-gate { gap: 7px; } 134.pp-th-side .pp-th-gate li { padding: 9px 10px; font-size: 12px; line-height: 1.4; } 135.pp-th-tiles-h { 136 display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin: 0 0 10px; 137} 138.pp-th-tiles-h .pp-th-h { margin: 0; } 139.pp-th-tiles-h .pp-th-note { margin: 0; font-size: 12px; } 140.pp-th-tiles-row { 141 margin: 0; padding: 0; list-style: none; 142 display: grid; grid-template-columns: repeat(4, minmax(0, 250px)); 143 gap: 8px; justify-content: start; 144} 145.pp-th-tiles-row li { 146 margin: 0; padding: 10px 12px; border-radius: 10px; 147 background: #F9FBFD; border: 1px solid #dcece2; 148 font-size: 12px; line-height: 1.4; 149 display: flex; flex-direction: row; align-items: flex-start; gap: 8px; min-width: 0; 150} 151.pp-th-tiles-row b { 152 flex: none; width: 22px; height: 22px; border-radius: 6px; 153 background: #0E7F3F; color: #fff; font-size: 11px; 154 display: inline-flex; align-items: center; justify-content: center; 155} 156.pp-th-tiles-row span { min-width: 0; flex: 1; color: #16233A; } 157@media (max-width: 1100px) { .pp-th-tiles-row { grid-template-columns: repeat(2, minmax(0, 280px)); } } 158@media (max-width: 640px) { .pp-th-tiles-row { grid-template-columns: 1fr; } } 159.pp-th-anames { margin: 0; padding-left: 17px; } 160.pp-th-anames li { margin-bottom: 4px; text-transform: capitalize; } 161.pp-th-engq { margin: 4px 0 2px; } 162.pp-th-engq em { 163 display: block; margin-bottom: 6px; font-style: normal; 164 font-size: 12px; font-weight: 600; color: #12A150; 165} 166.pp-th-chips { margin: 0; padding: 0; list-style: none; display: flex; flex-wrap: wrap; gap: 6px; } 167.pp-th-chips li { 168 margin: 0; padding: 4px 8px; border-radius: 6px; background: #F1F7F3; 169 border: 1px solid #dcece2; font-size: 12px; color: #16233A; 170} 171.pp-th-engbox { margin: 0; padding: 0; border: 0; background: transparent; } 172.pp-th-engbox > summary { 173 cursor: pointer; list-style: none; font-size: 12.5px; font-weight: 650; 174 color: #0E8A44; margin: 0 0 10px; 175} 176.pp-th-engbox > summary::-webkit-details-marker { display: none; } 177.pp-th-engbox > summary::before { content: 'â¾ '; color: #12A150; font-weight: 700; } 178.pp-th-engbox:not([open]) > summary::before { content: '⸠'; } 179.pp-th-memosecs { margin-top: 12px; } 180.pp-th-v { 181 display: block; margin: 10px 0 0; padding: 10px 12px; border-radius: 8px; 182 font-size: 12.5px; line-height: 1.45; 183} 184.pp-th-v.pass { background: #FDF2F2; color: #9B1C1C; border: 1px solid #F0D0D0; } 185.pp-th-v.consider { background: #FFF8EB; color: #92400E; border: 1px solid #FDE68A; } 186.pp-th-v.monitor { background: #EFF6FF; color: #1E3A8A; border: 1px solid #BFDBFE; } 187.pp-th-v.call { background: #E7F6EE; color: #0E8A44; border: 1px solid #BFE6CF; } 188`,nb="https://calendar.app.google/yL2nSRV974Jqaybd8",rb="https://calendar.google.com/calendar/appointments/schedules/AcZssZ1YUAtpAxybMmS3aOYz53A_-h4b8ZcgVuyjy_BA5o42CGVrnZrhoPTS9DMx4LJtMUdEGN0hPlc9?gv=true",ib="+33 6 83 10 72 86",sb="tel:+33683107286",Eh="[email protected]",ab={fr:{title:"Ãchanger avec Alexandre",sub:"votre Corporate Developer · 30 minutes",about:t=>`à propos de ${t}`,note:"Choisissez un créneau ci-dessous, ou joignez Alexandre directement au ",or:" ou par email à ",open:"Ouvrir le calendrier dans un nouvel onglet â",booked:"â Câest réservé",close:"Fermer"},en:{title:"Talk with Alexandre",sub:"your Corporate Developer · 30 minutes",about:t=>`About ${t}`,note:"Pick a slot below, or reach Alexandre directly at ",or:" or by email at ",open:"Open the calendar in a new tab â",booked:"â Iâve booked it",close:"Close"}},ob=` 189.pp-cal-ov{position:fixed;inset:0;z-index:2147483000;display:flex;align-items:center;justify-content:center; 190 padding:20px;background:rgba(15,29,51,.45);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)} 191.pp-cal{display:flex;flex-direction:column;width:min(760px,100%);max-height:92dvh;overflow:hidden; 192 background:#fff;border-radius:16px;box-shadow:0 30px 90px rgba(15,29,51,.35);color:#16233A; 193 font-family:"Instrument Sans",system-ui,-apple-system,"Segoe UI",sans-serif} 194.pp-cal-h{display:flex;align-items:flex-start;gap:12px;padding:18px 22px 14px;border-bottom:1px solid #E3E8F0} 195.pp-cal-no{flex:none;display:inline-grid;place-items:center;width:30px;height:30px;border-radius:50%; 196 background:#12A150;color:#fff;font-size:15px} 197.pp-cal-h h2{margin:0;font-size:20px;line-height:1.25;font-weight:700;letter-spacing:-.01em;color:#0F1D33} 198.pp-cal-h p{margin:3px 0 0;font-size:13.5px;color:#4B5E78} 199.pp-cal-x{margin-left:auto;padding:2px 6px;border:0;background:none;font-size:22px;line-height:1;color:#8FA0B8;cursor:pointer} 200.pp-cal-b{padding:14px 22px 20px;overflow:auto} 201.pp-cal-n{margin:0 0 12px;font-size:13px;line-height:1.5;color:#4B5E78} 202.pp-cal-n a{color:#0F1D33;font-weight:700;text-decoration:none} 203.pp-cal iframe{display:block;width:100%;min-height:640px;border:0;border-radius:12px;background:#fff} 204.pp-cal-f{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:10px 18px;margin:12px 0 0;font-size:13px} 205.pp-cal-f a{color:#0E7F3F;font-weight:600;text-decoration:none} 206.pp-cal-ok{padding:9px 16px;border:0;border-radius:10px;background:#12A150;color:#fff;font:inherit;font-weight:700;cursor:pointer} 207@media (max-width:560px){.pp-cal-ov{padding:0}.pp-cal{max-height:100dvh;height:100dvh;border-radius:0} 208 .pp-cal-b{padding:12px 14px 16px}.pp-cal iframe{min-height:560px}} 209`;function Pi({onClose:t,onBooked:n,subject:r}){const{lang:i}=ae(),s=ab[i==="en"?"en":"fr"];return m.useEffect(()=>{const a=c=>{c.key==="Escape"&&t()};window.addEventListener("keydown",a);const o=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{window.removeEventListener("keydown",a),document.body.style.overflow=o}},[t]),typeof document>"u"?null:Vn.createPortal(e.jsxs("div",{className:"pp-cal-ov",onClick:a=>{a.target===a.currentTarget&&t()},children:[e.jsx("style",{children:ob}),e.jsxs("div",{className:"pp-cal",role:"dialog","aria-modal":"true","aria-label":s.title,children:[e.jsxs("div",{className:"pp-cal-h",children:[e.jsx("span",{className:"pp-cal-no","aria-hidden":"true",children:"ð "}),e.jsxs("div",{children:[e.jsx("h2",{children:s.title}),e.jsx("p",{children:r?`${s.about(r)} · ${s.sub}`:s.sub})]}),e.jsx("button",{type:"button",className:"pp-cal-x","aria-label":s.close,onClick:t,children:"Ã"})]}),e.jsxs("div",{className:"pp-cal-b",children:[e.jsxs("p",{className:"pp-cal-n",children:[s.note,e.jsx("a",{href:sb,children:ib}),s.or,e.jsx("a",{href:`mailto:${Eh}`,children:Eh})]}),e.jsx("iframe",{title:s.title,src:rb,loading:"lazy"}),e.jsxs("div",{className:"pp-cal-f",children:[e.jsx("a",{href:nb,target:"_blank",rel:"noopener noreferrer",children:s.open}),n&&e.jsx("button",{type:"button",className:"pp-cal-ok",onClick:n,children:s.booked})]})]})]})]}),document.body)}const Tr={pitch_url:"",linkedin:"",product_url:"",pricing_url:"",team_url:""},dd="pp:evalx:";function tn(t){return t?!!(t.pitch_url||t.linkedin||t.product_url||t.pricing_url||t.team_url):!1}function Ep(t){if(!t)return{};const n={},r=(t.pitch_url||"").trim();r&&(n.pitch_url=r,n.pitch_deck_url=r);const i=(t.linkedin||"").trim();return i&&(n.linkedin=i),["product_url","pricing_url","team_url"].forEach(s=>{const a=(t[s]||"").trim();a&&(n[s]=a)}),n}function fs(t,n){const r=(t||"").trim().toLowerCase();if(r)try{tn(n)?localStorage.setItem(dd+r,JSON.stringify(n)):localStorage.removeItem(dd+r)}catch{}}function Dr(t){const n=(t||"").trim().toLowerCase();if(!n)return{...Tr};try{const r=localStorage.getItem(dd+n);if(!r)return{...Tr};const i=JSON.parse(r);return{pitch_url:String(i.pitch_url||""),linkedin:String(i.linkedin||""),product_url:String(i.product_url||""),pricing_url:String(i.pricing_url||""),team_url:String(i.team_url||"")}}catch{return{...Tr}}}function Nr(t,n){const r=n||{};return{pitch_url:(t.pitch_url||r.pitch_url||"").trim(),linkedin:(t.linkedin||r.linkedin||"").trim(),product_url:(t.product_url||r.product_url||"").trim(),pricing_url:(t.pricing_url||r.pricing_url||"").trim(),team_url:(t.team_url||r.team_url||"").trim()}}function M6(t){return Nr(Dr(t.name||""),{...Tr,linkedin:(t.contactLinkedin||"").trim()})}const lb=new Set(["b","strong","i","em","u","br","p","ul","ol","li","h4","h5"]),Ma=t=>t.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""");function cb(t){const n=(t||"").trim();return n?/^https?:\/\//i.test(n)?n:/^[a-z][a-z0-9+.-]*:/i.test(n)?"":`https://${n.replace(/^\/+/,"")}`:""}function bx(t){const n=cb(t);if(!n)return"";try{return new URL(n).hostname.replace(/^www\./,"")}catch{return""}}function R6(t,n){const r=bx(n),i=(t||"").trim();return i&&r?`${i} â ${r}`:r}function P6(t){const n=String(t||"");if(!n)return"";let r="",i=0;for(;i<n.length;){const s=n.indexOf("<",i);if(s<0){r+=Ma(n.slice(i));break}r+=Ma(n.slice(i,s));const a=n.indexOf(">",s);if(a<0){r+=Ma(n.slice(s));break}const o=n.slice(s+1,a).trim(),c=/^(\/?)([a-zA-Z0-9]+)/.exec(o),l=c?c[2].toLowerCase():"";c&&lb.has(l)?r+=`<${c[1]}${l}>`:r+=Ma(n.slice(s,a+1)),i=a+1}return r}const db=new Set(["script","noscript","style","link","iframe","object","embed","form","input","select","textarea","button","meta","base","dialog","svg","math","template","video","audio","source"]),Nh={"*":new Set(["class","style","title","colspan","rowspan"]),img:new Set(["src","alt","width","height"]),a:new Set(["href"]),button:new Set(["type","disabled"]),pre:new Set(["class","style"])};function pb(t){return t.tagName.toLowerCase()!=="button"?!1:t.hasAttribute("data-ap-ch")||t.hasAttribute("data-ap-day")?!0:!!t.closest("[data-ct-card], [data-ap-msg], [data-ch]")}function yx(t){var r;const n=Array.from(t.children);for(const i of n){const s=i.tagName.toLowerCase();if(db.has(s)&&!pb(i)){i.remove();continue}for(const o of Array.from(i.attributes)){const c=o.name.toLowerCase();(!(c.startsWith("data-")||Nh["*"].has(c)||((r=Nh[s])==null?void 0:r.has(c)))||c.startsWith("on"))&&i.removeAttribute(o.name)}const a=i.getAttribute("style")||"";
209if(a&&/position\s*:\s*(fixed|sticky)/i.test(a))i.removeAttribute("style");else if(a){const o=a.split(";").filter(c=>c.trim()&&!/^\s*(font-size|font-family|line-height|font)\s*:/i.test(c)).join(";");o!==a&&(o?i.setAttribute("style",o):i.removeAttribute("style"))}if(s==="a"){const o=(i.getAttribute("href")||"").trim();/^(https?:|mailto:)/i.test(o)?(i.setAttribute("target","_blank"),i.setAttribute("rel","noopener noreferrer")):i.removeAttribute("href")}if(s==="img"){const o=(i.getAttribute("src")||"").trim();if(!/^https?:/i.test(o)){i.remove();continue}i.setAttribute("loading","lazy")}yx(i)}}function I6(t,n){const r=t.cloneNode(!0);return yx(r),r.querySelectorAll("[id]").forEach(i=>i.removeAttribute("id")),r.removeAttribute("id"),n!=null&&n.outer?r.outerHTML:r.innerHTML}const jx={fr:{tog:"Pitch deck ou LinkedIn du dirigeant â facultatif",togRow:"Ajouter des infos",togOn:"Moins dâinfos",hint:"Rien nâest obligatoire. Les champs déjà trouvés sont préremplis â LinkedIn, produit, tarifs, équipe peuvent améliorer lâanalyse.",pitch:"Pitch deck (PDF ou URL)",pitchPh:"https://â¦/deck.pdf",up:"Importer un PDF",upping:"Importâ¦",upOk:"PDF importé",upErr:"PDF uniquement, 25 Mo max.",li:"LinkedIn du dirigeant",liPh:"https://linkedin.com/in/â¦",more:"Pages produit, tarifs, équipe",moreOn:"Moins de pages",product:"Produit",pricing:"Tarifs",team:"Ãquipe",pagePh:"https://â¦",popT:"Deck, LinkedIn, pages â facultatif",filled:"Informations complémentaires déjà renseignées : deck, LinkedIn ou pages du site."},en:{tog:"Pitch deck or CEO LinkedIn â optional",togRow:"Add details",togOn:"Less info",hint:"Nothing required. Fields we already found are prefilled â LinkedIn, product, pricing and team pages can improve the analysis.",pitch:"Pitch deck (PDF or URL)",pitchPh:"https://â¦/deck.pdf",up:"Upload a PDF",upping:"Uploadingâ¦",upOk:"PDF uploaded",upErr:"PDF only, 25 MB max.",li:"CEO LinkedIn",liPh:"https://linkedin.com/in/â¦",more:"Product, pricing, team pages",moreOn:"Fewer pages",product:"Product",pricing:"Pricing",team:"Team",pagePh:"https://â¦",popT:"Deck, LinkedIn, pages â optional",filled:"Additional information already filled in: deck, LinkedIn or website pages."}};function Np({lang:t,variant:n="bar",storeKey:r,value:i,onChange:s,seed:a,memoUrl:o,website:c}){const l=jx[t],d=n==="pop",[p,u]=m.useState(()=>Nr(i||(r?Dr(r):{...Tr}),a)),g=i||p,[f,L]=m.useState(()=>d||tn(g)),[v,y]=m.useState(()=>!!(g.product_url||g.pricing_url||g.team_url)),[h,b]=m.useState(!1),[x,A]=m.useState(""),[w,S]=m.useState(""),E=m.useRef(null),j=m.useRef(r||"");m.useEffect(()=>{if(i||!r||r===j.current)return;const N=Nr(Dr(r),a);
209u(I=>tn(N)?N:tn(I)?(fs(r,I),I):N),tn(N)&&L(!0),(N.product_url||N.pricing_url||N.team_url)&&y(!0),j.current=r},[r,i,a]),m.useEffect(()=>{i||!a||!tn(a)||(u(N=>{const I=Nr(N,a);return I.linkedin===N.linkedin&&I.product_url===N.product_url&&I.pricing_url===N.pricing_url&&I.team_url===N.team_url&&I.pitch_url===N.pitch_url?N:(r&&tn(I)&&fs(r,I),I)}),(a.product_url||a.pricing_url||a.team_url)&&y(!0))},[a,r,i]),m.useEffect(()=>{if(i||!o)return;let N=!0;return Vr(async()=>{const{loadMemoDoc:I,pageUrlsFromMemo:ce}=await import("./memoContent-7h4qbRFv.js").then(K=>K.d);return{loadMemoDoc:I,pageUrlsFromMemo:ce}},[]).then(({loadMemoDoc:I,pageUrlsFromMemo:ce})=>{if(N)return I(o).then(K=>{if(!N||!K)return;const pe=ce(K,bx(c||""));!pe.product_url&&!pe.pricing_url&&!pe.team_url||(u(ee=>{const P=Nr(ee,pe);return r&&tn(P)&&fs(r,P),P}),y(!0))})}),()=>{N=!1}},[o,c,r,i]);const O=N=>{i||u(N),s==null||s(N),r&&fs(r,N)},k=N=>O({...g,...N}),_=async N=>{if(N){b(!0),S(""),A("");try{const I=await C2(N);k({pitch_url:I}),A(l.upOk)}catch{S(l.upErr)}finally{b(!1)}}};return e.jsxs("div",{className:`xtra xtra-${n}`+(f||d?" on":"")+(tn(g)?" filled":""),onClick:N=>N.stopPropagation(),onKeyDown:N=>N.stopPropagation(),children:[!d&&e.jsxs("button",{type:"button",className:"xtra-tog","aria-expanded":f,onClick:()=>L(N=>!N),children:[f?l.togOn:n==="row"?l.togRow:l.tog,e.jsx("i",{"aria-hidden":"true",children:f?"â´":"â¾"})]}),(f||d)&&e.jsxs("div",{className:"xtra-box",children:[e.jsx("p",{className:"xtra-hint",children:l.hint}),e.jsxs("label",{className:"xtra-lbl",children:[l.pitch,e.jsxs("span",{className:"xtra-pitch",children:[e.jsx("input",{type:"url",inputMode:"url",autoComplete:"off",spellCheck:!1,placeholder:l.pitchPh,value:g.pitch_url,onChange:N=>{A(""),k({pitch_url:N.target.value})}}),e.jsx("button",{type:"button",className:"xtra-up",disabled:h,onClick:()=>{var N;return(N=E.current)==null?void 0:N.click()},children:h?l.upping:l.up}),e.jsx("input",{ref:E,type:"file",accept:"application/pdf,.pdf",hidden:!0,onChange:N=>{var I;_((I=N.target.files)==null?void 0:I[0]),N.target.value=""}})]}),x&&e.jsx("span",{className:"xtra-ok",children:x}),w&&e.jsx("span",{className:"xtra-err",role:"alert",children:w})]}),e.jsxs("label",{className:"xtra-lbl",children:[l.li,e.jsx("input",{type:"url",inputMode:"url",autoComplete:"off",spellCheck:!1,placeholder:l.liPh,value:g.linkedin,onChange:N=>k({linkedin:N.target.value})})]}),e.jsx("button",{type:"button",className:"xtra-more",onClick:()=>y(N=>!N),children:v?l.moreOn:l.more}),v&&e.jsxs("div",{className:"xtra-pages",children:[e.jsxs("label",{className:"xtra-lbl",children:[l.product,e.jsx("input",{type:"url",placeholder:l.pagePh,value:g.product_url,onChange:N=>k({product_url:N.target.value})})]}),e.jsxs("label",{className:"xtra-lbl",children:[l.pricing,e.jsx("input",{type:"url",placeholder:l.pagePh,value:g.pricing_url,onChange:N=>k({pricing_url:N.target.value})})]}),e.jsxs("label",{className:"xtra-lbl",children:[l.team,e.jsx("input",{type:"url",placeholder:l.pagePh,value:g.team_url,onChange:N=>k({team_url:N.target.value})})]})]})]}),e.jsx("style",{children:wx})]})}const es=12;function ub(){if(typeof window>"u"||typeof document>"u")return 0;const t=window.innerHeight;let n=0;return document.querySelectorAll(".atl2 .lockbar.unlock-bar").forEach(r=>{const i=r.getBoundingClientRect();i.height>0&&i.top<t&&i.bottom>=t-2&&(n=Math.max(n,t-i.top))}),Math.round(n)}function Ra(t=460){if(typeof window>"u")return{top:24,left:12,width:400,maxHeight:640};const n=window.innerWidth,r=window.innerHeight,i=Math.max(0,Math.min(420,n-es*2)),s=Math.max(es*2,r-ub()),a=Math.max(180,s-es*2),o=Math.min(Math.max(180,t),a);return{top:Math.max(es,Math.round((s-o)/2)),left:Math.max(es,Math.round((n-i)/2)),width:i,maxHeight:a}}function D6({lang:t,storeKey:n,className:r,title:i,disabled:s,confirmLabel:a,style:o,onConfirm:c,onLock:l,children:d,startOpen:p=!1,seed:u,memoUrl:g,website:f}){const L=jx[t],v=m.useRef(null),[y,h]=m.useState(!1),[b,x]=m.useState(()=>Ra()),[A,w]=m.useState(()=>tn(Nr(Dr(n),u)));m.useEffect(()=>{hb()},[]),m.useEffect(()=>{p&&(x(Ra()),h(!0))},[p]),m.useEffect(()=>{y||w(tn(Nr(Dr(n),u)))},[y,n,u]),m.useEffect(()=>{if(!y)return;const j=O=>{O.key==="Escape"&&h(!1)};return document.addEventListener("keydown",j),()=>document.removeEventListener("keydown",j)},[y]),m.useLayoutEffect(()=>{if(!y||!v.current)return;const j=v.current,O=()=>{const _=Math.max(j.scrollHeight,j.getBoundingClientRect().height),N=Ra(_||460);x(I=>I.top===N.top&&I.left===N.left&&I.width===N.width&&I.maxHeight===N.maxHeight?I:N)};O(),window.addEventListener("resize",O);const k=typeof ResizeObserver<"u"?new ResizeObserver(O):null;return k==null||k.observe(j),()=>{window.removeEventListener("resize",O),k==null||k.disconnect()}},[y]);const S=j=>{if(j.stopPropagation(),!s){if(l){l();return}if(!(n||"").trim()){c();return}x(Ra()),h(!0)}},E=()=>{h(!1),c()};return e.jsxs(e.Fragment,{children:[e.jsxs("button",{type:"button",className:r,style:o,disabled:s,title:[i,A?L.filled:""].filter(
209Boolean).join(" · ")||void 0,onClick:S,children:[d,A&&e.jsx("i",{className:"xtra-ask-pip",role:"img","aria-label":L.filled,title:L.filled})]}),y&&Vn.createPortal(e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"xtra-ask-veil",onClick:()=>h(!1)}),e.jsxs("form",{ref:v,className:"xtra-ask-pop",role:"dialog","aria-label":L.popT,"aria-modal":"true",style:{top:b.top,left:b.left,width:b.width,maxHeight:b.maxHeight},onClick:j=>j.stopPropagation(),onSubmit:j=>{j.preventDefault(),E()},children:[e.jsxs("div",{className:"xtra-ask-hd",children:[e.jsx("b",{children:L.popT}),e.jsx("button",{type:"button",className:"xtra-ask-x","aria-label":"Ã",onClick:()=>h(!1),children:"Ã"})]}),e.jsx(Np,{lang:t,variant:"pop",storeKey:n,seed:u,memoUrl:g,website:f}),e.jsx("button",{type:"submit",className:"xtra-ask-go"+(/\bmemobtn\b/.test(r||"")?" memo":""),children:a})]})]}),document.body)]})}function hb(){if(typeof document>"u"||document.getElementById("pp-xtra-css"))return;const t=document.createElement("style");t.id="pp-xtra-css",t.textContent=wx,document.head.appendChild(t)}const wx=` 210.xtra{margin-top:8px;font:inherit;text-align:left} 211.xtra-tog{display:inline-flex;align-items:center;gap:6px;margin:0;padding:0; 212 border:0;background:none;font:inherit;font-size:12.5px;font-weight:600; 213 color:#5B6B82;cursor:pointer;text-align:left} 214.xtra-tog:hover{color:#0E7F3F} 215.xtra.filled .xtra-tog{color:#0E7F3F} 216.xtra-tog i{font-style:normal;font-size:10px;opacity:.7} 217.xtra-box{margin-top:8px;padding:10px 12px;border:1px dashed #D5DEE8; 218 border-radius:10px;background:#F8FAFC;display:flex;flex-direction:column;gap:8px} 219.xtra-hint{margin:0;font-size:11.5px;line-height:1.4;color:#7A8694;font-weight:400} 220.xtra-lbl{display:flex;flex-direction:column;gap:4px;font-size:11.5px;font-weight:600;color:#0F1D33} 221.xtra-lbl input{font:inherit;font-size:13px;font-weight:400;padding:8px 10px; 222 border:1px solid #E3E8F0;border-radius:7px;color:#0F1D33;background:#fff; 223 width:100%;box-sizing:border-box} 224.xtra-lbl input:focus{outline:none;border-color:#12A150} 225.xtra-pitch{display:flex;gap:6px;align-items:stretch} 226.xtra-pitch input{flex:1;min-width:0} 227.xtra-up{flex:none;font:inherit;font-size:11.5px;font-weight:650;padding:0 10px; 228 border:1px solid #D5DEE8;border-radius:7px;background:#fff;color:#0F1D33;cursor:pointer;white-space:nowrap} 229.xtra-up:hover:not(:disabled){border-color:#12A150;color:#0E7F3F} 230.xtra-up:disabled{opacity:.55;cursor:default} 231.xtra-ok{font-size:11px;font-weight:600;color:#0E7F3F} 232.xtra-err{font-size:11px;font-weight:600;color:#C0353A} 233.xtra-more{align-self:flex-start;margin:0;padding:0;border:0;background:none; 234 font:inherit;font-size:11.5px;font-weight:600;color:#5B6B82;cursor:pointer} 235.xtra-more:hover{color:#0E7F3F} 236.xtra-pages{display:grid;grid-template-columns:1fr;gap:8px} 237@media (min-width:640px){.xtra-pages{grid-template-columns:1fr 1fr 1fr}} 238.xtra-hero{max-width:600px;margin:10px auto 0;text-align:center} 239.xtra-hero .xtra-tog{justify-content:center;font-weight:500} 240.xtra-hero .xtra-box{text-align:left} 241.xtra-form{margin-top:2px} 242.xtra-form .xtra-box{background:#fff;border-style:solid;border-color:#E3E8F0} 243.xtra-bar{margin:8px 0 0} 244.xtra-row{margin:4px 0 8px} 245.xtra-row .xtra-box{padding:8px 10px} 246.xtra-action{margin-top:6px;width:100%} 247.xtra-action .xtra-tog{font-size:11.5px;font-weight:600;width:100%;justify-content:center} 248.xtra-action .xtra-box{padding:8px} 249.xtra-pop{margin:0} 250.xtra-pop .xtra-box{margin:0;padding:0;border:0;background:transparent;border-radius:0} 251.xtra-ask-pip{display:inline-block;width:6px;height:6px;margin-left:6px;border-radius:50%; 252 background:#12A150;vertical-align:middle} 253.xtra-ask-veil{position:fixed;inset:0;z-index:240;background:rgba(15,29,51,.10)} 254.xtra-ask-pop{position:fixed;z-index:241;box-sizing:border-box;margin:0; 255 background:#fff;border:1px solid #D5DEE8;border-radius:12px; 256 box-shadow:0 12px 40px rgba(15,29,51,.16);padding:12px 14px 14px; 257 display:flex;flex-direction:column;gap:10px;text-align:left; 258 overflow-y:auto;overscroll-behavior:contain} 259.xtra-ask-hd{display:flex;align-items:center;justify-content:space-between;gap:8px} 260.xtra-ask-hd b{font:inherit;font-size:13px;font-weight:700;color:#0F1D33} 261.xtra-ask-x{margin:0;padding:0 2px;border:0;background:none;font-size:18px;line-height:1; 262 color:#7A8694;cursor:pointer} 263.xtra-ask-x:hover{color:#0F1D33} 264.xtra-ask-go{margin:2px 0 0;padding:10px 14px;border:0;border-radius:8px; 265 background:#12A150;color:#fff;font:inherit;font-size:13px;font-weight:700; 266 cursor:pointer;width:100%;box-sizing:border-box} 267.xtra-ask-go:hover{background:#0E8A44} 268.xtra-ask-go.memo{background:#0F1D33} 269.xtra-ask-go.memo:hover{background:#1B2F4E} 270.home3 .xtra-hero .xtra-tog{color:#5B6B82} 271`,mb=365*24*60*60*1e3;function kx(t){const n=t||"";return/Gmail|GoogleApp|GSA\/|FBAN|FBAV|Instagram|LinkedInApp|Line\/|TwitterAndroid|Twitter for|Outlook-iOS|MSAuthHost|MicroMessenger|; wv\b|WebView/i.test(n)?!0:/iPhone|iPad|iPod/i.test(n)&&!/Safari/i.test(n)}function Ax(t,n){const r=Number(t||0);return r?n-r<mb:!0}const qr={FR:{fr:"France",en:"France"},DE:{fr:"Allemagne",en:"Germany"},GB:{fr:"Royaume-Uni",en:"United Kingdom"},US:{fr:"Ãtats-Unis",en:"United States"}
271,CA:{fr:"Canada",en:"Canada"},MX:{fr:"Mexique",en:"Mexico"},BR:{fr:"Brésil",en:"Brazil"},AR:{fr:"Argentine",en:"Argentina"},CL:{fr:"Chili",en:"Chile"},CO:{fr:"Colombie",en:"Colombia"},PE:{fr:"Pérou",en:"Peru"},UY:{fr:"Uruguay",en:"Uruguay"},ES:{fr:"Espagne",en:"Spain"},PT:{fr:"Portugal",en:"Portugal"},IT:{fr:"Italie",en:"Italy"},CH:{fr:"Suisse",en:"Switzerland"},AT:{fr:"Autriche",en:"Austria"},BE:{fr:"Belgique",en:"Belgium"},NL:{fr:"Pays-Bas",en:"Netherlands"},LU:{fr:"Luxembourg",en:"Luxembourg"},IE:{fr:"Irlande",en:"Ireland"},IS:{fr:"Islande",en:"Iceland"},DK:{fr:"Danemark",en:"Denmark"},SE:{fr:"Suède",en:"Sweden"},NO:{fr:"Norvège",en:"Norway"},FI:{fr:"Finlande",en:"Finland"},PL:{fr:"Pologne",en:"Poland"},CZ:{fr:"Tchéquie",en:"Czechia"},SK:{fr:"Slovaquie",en:"Slovakia"},HU:{fr:"Hongrie",en:"Hungary"},RO:{fr:"Roumanie",en:"Romania"},BG:{fr:"Bulgarie",en:"Bulgaria"},GR:{fr:"Grèce",en:"Greece"},HR:{fr:"Croatie",en:"Croatia"},SI:{fr:"Slovénie",en:"Slovenia"},RS:{fr:"Serbie",en:"Serbia"},BA:{fr:"Bosnie-Herzégovine",en:"Bosnia and Herzegovina"},AL:{fr:"Albanie",en:"Albania"},MK:{fr:"Macédoine du Nord",en:"North Macedonia"},ME:{fr:"Monténégro",en:"Montenegro"},UA:{fr:"Ukraine",en:"Ukraine"},BY:{fr:"Biélorussie",en:"Belarus"},MD:{fr:"Moldavie",en:"Moldova"},RU:{fr:"Russie",en:"Russia"},TR:{fr:"Turquie",en:"Türkiye"},CY:{fr:"Chypre",en:"Cyprus"},MT:{fr:"Malte",en:"Malta"},EE:{fr:"Estonie",en:"Estonia"},LV:{fr:"Lettonie",en:"Latvia"},LT:{fr:"Lituanie",en:"Lithuania"},IL:{fr:"Israël",en:"Israel"},AE:{fr:"Ãmirats arabes unis",en:"United Arab Emirates"},SA:{fr:"Arabie saoudite",en:"Saudi Arabia"},QA:{fr:"Qatar",en:"Qatar"},KW:{fr:"Koweït",en:"Kuwait"},BH:{fr:"Bahreïn",en:"Bahrain"},OM:{fr:"Oman",en:"Oman"},JO:{fr:"Jordanie",en:"Jordan"},LB:{fr:"Liban",en:"Lebanon"},EG:{fr:"Ãgypte",en:"Egypt"},MA:{fr:"Maroc",en:"Morocco"},DZ:{fr:"Algérie",en:"Algeria"},TN:{fr:"Tunisie",en:"Tunisia"},NG:{fr:"Nigéria",en:"Nigeria"},KE:{fr:"Kenya",en:"Kenya"},ZA:{fr:"Afrique du Sud",en:"South Africa"},GH:{fr:"Ghana",en:"Ghana"},SN:{fr:"Sénégal",en:"Senegal"},CI:{fr:"Côte d'Ivoire",en:"Ivory Coast"},ET:{fr:"Ãthiopie",en:"Ethiopia"},TZ:{fr:"Tanzanie",en:"Tanzania"},UG:{fr:"Ouganda",en:"Uganda"},RW:{fr:"Rwanda",en:"Rwanda"},MU:{fr:"Maurice",en:"Mauritius"},IN:{fr:"Inde",en:"India"},PK:{fr:"Pakistan",en:"Pakistan"},BD:{fr:"Bangladesh",en:"Bangladesh"},LK:{fr:"Sri Lanka",en:"Sri Lanka"},CN:{fr:"Chine",en:"China"},JP:{fr:"Japon",en:"Japan"},KR:{fr:"Corée du Sud",en:"South Korea"},TW:{fr:"Taïwan",en:"Taiwan"},HK:{fr:"Hong Kong",en:"Hong Kong"},SG:{fr:"Singapour",en:"Singapore"},MY:{fr:"Malaisie",en:"Malaysia"},TH:{fr:"Thaïlande",en:"Thailand"},VN:{fr:"Viêt Nam",en:"Vietnam"},PH:{fr:"Philippines",en:"Philippines"},ID:{fr:"Indonésie",en:"Indonesia"},KH:{fr:"Cambodge",en:"Cambodia"},AU:{fr:"Australie",en:"Australia"},NZ:{fr:"Nouvelle-Zélande",en:"New Zealand"},EU:{fr:"Europe (non précisé)",en:"Europe (unspecified)"}},z6={FR:[2.4,46.6],DE:[10.3,51.1],GB:[-1.5,52.8],US:[-98.5,39.5],CA:[-105,56],MX:[-102.5,23.8],BR:[-52,-10.5],AR:[-64,-34.5],CL:[-71,-35.5],CO:[-73.5,4.5],PE:[-75.5,-10],UY:[-56,-32.8],ES:[-3.7,40.3],PT:[-8.1,39.7],IT:[12.6,42.6],CH:[8.2,46.8],AT:[14.2,47.6],BE:[4.6,50.6],NL:[5.4,52.2],LU:[6.1,49.8],IE:[-8,53.2],IS:[-18.6,64.9],DK:[9.3,56.1],SE:[15.5,60.2],NO:[9,61.5],FI:[26,62.9],PL:[19.3,52.1],CZ:[15.4,49.8],SK:[19.5,48.7],HU:[19.4,47.2],RO:[25,45.9],BG:[25.3,42.7],GR:[22.5,39.3],HR:[15.9,45.4],SI:[14.8,46.1],RS:[20.8,44.2],BA:[17.8,44.2],AL:[20.1,41.1],MK:[21.7,41.6],ME:[19.3,42.7],UA:[31.2,49],BY:[27.9,53.5],MD:[28.5,47.2],RU:[60,57],TR:[35.2,39],CY:[33.2,35.1],MT:[14.4,35.9],EE:[25.8,58.7],LV:[24.9,56.9],LT:[24,55.3],IL:[34.9,31.4],AE:[54.3,23.9],SA:[45,24],QA:[51.2,25.3],KW:[47.6,29.3],BH:[50.55,26.05],OM:[56,21],JO:[36.8,31.2],LB:[35.85,33.9],EG:[29.8,26.6],MA:[-6.5,32],DZ:[2.6,28],TN:[9.5,34.1],NG:[8,9.6],KE:[37.8,.5],ZA:[24.7,-29],GH:[-1.2,7.9],SN:[-14.5,14.4],CI:[-5.6,7.5],ET:[39.6,8.6],TZ:[34.8,-6.4],UG:[32.4,1.3],RW:[29.9,-2],MU:[57.55,-20.3],IN:[78.7,22.4],PK:[69.4,29.9],BD:[90.3,23.8],LK:[80.7,7.9],CN:[104,35],JP:[138.5,36.6],KR:[127.8,36.4],TW:[121,23.7],HK:[114.15,22.3],SG:[103.82,1.35],MY:[102,4.2],TH:[101,15.2],VN:[106.3,16.6],PH:[122.6,12.9],ID:[113,-2.5],KH:[104.9,12.5],AU:[134.5,-25.7],NZ:[172.8,-41.5],EU:[8,50.5]},Io={};(function(){for(const n of Object.keys(qr))n!=="EU"&&(Io[qr[n].en.toLowerCase()]=n);Object.assign(Io,{"united states of america":"US","bosnia and herz.":"BA",macedonia:"MK","
271north macedonia":"MK","czech republic":"CZ",czechia:"CZ",turkey:"TR",türkiye:"TR","côte d'ivoire":"CI","ivory coast":"CI","united republic of tanzania":"TZ",tanzania:"TZ",vietnam:"VN","viet nam":"VN","republic of korea":"KR","south korea":"KR","w. sahara":null,"western sahara":null,"falkland is.":null,"fr. s. antarctic lands":null,somaliland:null,"n. cyprus":null,antarctica:null,greenland:null,kosovo:null})})();function B6(t){const n=(t||"").toLowerCase();return Object.prototype.hasOwnProperty.call(Io,n)?Io[n]:null}const Nn={};(function(){const n=i=>i.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().trim();for(const i of Object.keys(qr))Nn[n(qr[i].fr)]=i,Nn[n(qr[i].en)]=i;const r={usa:"US","etats-unis":"US","etats unis":"US","united states":"US",us:"US",america:"US",uk:"GB","royaume uni":"GB",angleterre:"GB",england:"GB","grande-bretagne":"GB","great britain":"GB",britain:"GB",scotland:"GB",deutschland:"DE","the netherlands":"NL",holland:"NL","pays bas":"NL","republique tcheque":"CZ",tchequie:"CZ","czech republic":"CZ","coree du sud":"KR",korea:"KR","south korea":"KR","viet nam":"VN","hong-kong":"HK",emirats:"AE","emirats arabes unis":"AE",uae:"AE",dubai:"AE","arabie saoudite":"SA","saudi arabia":"SA","afrique du sud":"ZA","south africa":"ZA","cote d'ivoire":"CI","ivory coast":"CI",turquie:"TR",turkiye:"TR",turkey:"TR",brasil:"BR",europe:"EU",eu:"EU","union europeenne":"EU","new-zealand":"NZ","nouvelle zelande":"NZ"};for(const i of Object.keys(r))Nn[n(i)]=r[i]})();function Kt(t){const n=(t||"").trim();if(!n||n==="?"||n.toLowerCase()==="int")return null;if(/^[A-Za-z]{2}$/.test(n)){const a=n.toUpperCase();return a==="UK"?"GB":a==="EU"?"EU":qr[a]?a:null}const r=a=>a.normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().trim(),i=r(n);if(Nn[i])return Nn[i];const s=n.split("(")[0].split("/")[0].trim();if(s&&s!==n){if(/^[A-Za-z]{2}$/.test(s))return Kt(s);const a=r(s);if(Nn[a])return Nn[a]}if(n.includes(",")){const a=n.split(",").map(o=>o.trim()).filter(Boolean);for(let o=a.length-1;o>=0;o--){const c=a[o];if(/^\d[\d\s-]*$/.test(c))continue;const l=c.match(/^([A-Za-z]{2})(?:[-\s]\S+)?$/);if(l){const p=Kt(l[1]);if(p)return p}const d=r(c);if(Nn[d])return Nn[d]}}return null}function Dn(t,n){if(!t)return n==="fr"?"Non localisée":"Unlocated";const r=qr[t];return r?r[n]:t}function cl(t){if(!t||t.length!==2)return"ð";const n=127462;return String.fromCodePoint(n+t.charCodeAt(0)-65)+String.fromCodePoint(n+t.charCodeAt(1)-65)}const pd={similar:{fr:"Similarité",en:"Similarity",emoji:"ð§¬",glyph:"star4"},media:{fr:"Actualité & web",en:"News & web",emoji:"ð°",glyph:"dotcircle"},funding:{fr:"Financement",en:"Funding",emoji:"ð°",glyph:"tri"},jobs:{fr:"Recrutement",en:"Hiring",emoji:"ð¼",glyph:"dotsquare"},registre:{fr:"Registres officiels",en:"Official registries",emoji:"ðï¸",glyph:"tridown"},manuel:{fr:"Sur-mesure",en:"Custom",emoji:"âï¸",glyph:"ring"},ma:{fr:"Opération M&A",en:"M&A deal",emoji:"ð¤",glyph:"diamond"},memo:{fr:"Analysée par Proplace",en:"Analysed by Proplace",emoji:"ð",glyph:"fillsquare"},note:{fr:"Note de recherche",en:"Research note",emoji:"ð",glyph:"hollowsquare"},nomination:{fr:"Nominations",en:"Appointments",emoji:"ð",glyph:"dotcircle"}},ua={media:{family:"media",fr:"Actualités",en:"News",descFr:"La presse et les signaux du jour autour des opérations de vos secteurs.",descEn:"Today's press and signals around the deals in your sectors."},tribunes:{family:"media",fr:"Analyses & tribunes",en:"Analysis & op-eds",emoji:"ð",descFr:"Essais, how-to, notes de marché â pas un signal société du jour.",descEn:"Essays, how-tos, market notes â not a company signal of the day."},listes:{family:"media",fr:"Listes & classements",en:"Lists & rankings",emoji:"ð",descFr:"Palmarès, « N startups to watch », hotspots.",descEn:"Rankings, âN startups to watchâ, hotspots."},evenements:{family:"media",fr:"Ãvénements",en:"Events",emoji:"ðï¸",descFr:"Salons, sommets, pitchs â VivaTech, Disrupt, et les autres.",descEn:"Trade shows, summits, pitches â VivaTech, Disrupt, and the rest."},partenariats:{family:"media",fr:"Partenariats & contrats",en:"Partnerships & contracts",emoji:"ð",descFr:"Alliances, contrats signés, sélections â un signal commercial.",descEn:"Alliances, signed contracts, selections â a commercial signal."},produits:{family:"media",fr:"Produits & lancements",en:"Products & launches",emoji:"ð¦",descFr:"Lancements, nouvelles offres, mises sur le marché.",descEn:"Launches, new offers, go-to-market."},regul:{family:"media",fr:"Réglementaire & litiges",en:"Regulation & disputes",emoji:"âï¸",descFr:"Licences, agréments, procès, enquêtes.",descEn:"Licenses, approvals, lawsuits, probes."},marche:{family:"media",fr:"Bourse & marchés",en:"Markets & listings",emoji:"ð",descFr:"IPO, cotations, émissions de dette.",descEn:"IPOs, listings, debt issues."},edito:{family:"media",fr:"Edito du jour",en:"Today's editorial",descFr:"L'analyse inbound du jour â l'article indexé, aussi publié sur LinkedIn.",descEn:"Today's inbound analysis â the indexed article, also posted on LinkedIn."},nominations:{family:"nomination",fr:"Nominations",en:"Appointments",descFr:"Les prises de poste et mouvements de dirigeants du jour.",descEn:"Today's executive appointments and leadership moves."},recrutements:{family:"jobs",fr:"Recrutements",en:"Hirings",descFr:"Les sociétés qui recrutent â une stratég
271ie qui se trahit dans les offres.",descEn:"Companies hiring â strategy betrayed by job postings."},exa_similar:{family:"similar",fr:"Exa Similar",en:"Exa Similar",descFr:"Part d'une société que vous aimez et trouve toutes celles qui lui ressemblent sur le web.",descEn:"Starts from a company you like and finds every lookalike on the web."},websets:{family:"similar",fr:"Exa Websets",en:"Exa Websets",descFr:"Construit des listes de sociétés sur mesure à partir d'une simple description.",descEn:"Builds bespoke company lists from a plain-language description."},parallel:{family:"similar",fr:"Parallel",en:"Parallel",descFr:"Cherche chaque matin d'autres sociétés qui collent à votre thèse, en plus des moteurs déjà en place.",descEn:"Each morning, finds more companies that fit your thesis, on top of the engines already running."},exa_semantic:{family:"similar",fr:"Exa Semantic",en:"Exa Semantic",descFr:"Recherche sémantique sur tout le web : décrivez ce que vous cherchez en langage naturel.",descEn:"Semantic search across the web: describe what you want in natural language."},hunter:{family:"similar",fr:"Hunter",en:"Hunter",descFr:"Retrouve les coordonnées professionnelles des sociétés pour identifier les bons interlocuteurs.",descEn:"Finds company contact details to identify the right people to reach."},backfill:{family:"similar",fr:"Backfill",en:"Backfill",descFr:"Repasse sur les périodes passées pour rattraper les sociétés passées entre les mailles du filet.",descEn:"Sweeps past periods to catch companies that slipped through the net."},rss:{family:"media",fr:"RSS",en:"RSS",descFr:"Lit chaque matin des centaines de médias et flux spécialisés de votre secteur.",descEn:"Reads hundreds of sector media and feeds every morning."},editorial:{family:"media",fr:"Ãditorial (médias experts)",en:"Editorial (expert media)",descFr:"Suit les médias experts et lettres spécialisées pour repérer les sociétés dont on commence à parler.",descEn:"Tracks expert media and specialist newsletters for companies starting to make noise."},daily_news:{family:"media",fr:"Veille du jour",en:"Daily watch",descFr:"Articles, vidéos et podcasts récents retenus pour votre thèse.",descEn:"Recent articles, videos and podcasts curated for your thesis."},google_news:{family:"media",fr:"Google News",en:"Google News",descFr:"Balaie l'actualité mondiale en continu (levées, lancements, nominations).",descEn:"Sweeps world news continuously (raises, launches, appointments)."},google_alerts:{family:"media",fr:"Google Alerts",en:"Google Alerts",descFr:"Surveille des mots-clés précis sur tout le web et remonte chaque société correspondante.",descEn:"Watches precise keywords across the web and surfaces each matching company."},linkedin_posts:{family:"media",fr:"LinkedIn Posts",en:"LinkedIn Posts",descFr:"Analyse les publications LinkedIn pour repérer les annonces intéressantes.",descEn:"Reads LinkedIn posts to spot interesting announcements."},hackernews:{family:"media",fr:"Hacker News",en:"Hacker News",descFr:"Scrute le forum de référence des fondateurs tech pour repérer les projets qui émergent.",descEn:"Watches the reference founders forum for emerging projects."},github:{family:"media",fr:"GitHub",en:"GitHub",descFr:"Détecte les sociétés tech par l'activité de leurs développeurs â signal très en amont.",descEn:"Detects tech companies from developer activity â a very early signal."},fundraising:{family:"funding",fr:"Fundraising",en:"Fundraising",descFr:"Repère les sociétés qui viennent de lever â le moment précis où elles accélèrent.",descEn:"Spots companies that just raised â the exact moment they accelerate."},crunchbase_search:{family:"funding",fr:"Crunchbase",en:"Crunchbase",descFr:"Interroge la base mondiale des startups et de leurs financements par profil.",descEn:"Queries the global startup & funding database by profile."},linkedin_jobs:{family:"jobs",fr:"LinkedIn Jobs",en:"LinkedIn Jobs",descFr:"Lit les offres d'emploi : une société qui recrute massivement trahit sa stratégie.",descEn:"Reads job postings: heavy hiring betrays strategy and growth."},departs:{family:"jobs",fr:"Départs concurrents",en:"Competitor departures",descFr:"Détecte les départs de talents des concurrents â souvent une société en création.",descEn:"Detects talent leaving competitors â often a new company in the making."},pappers_fr:{family:"registre",fr:"Pappers FR",en:"Pappers FR",descFr:"Interroge les registres officiels français (SIRENE, c
271odes NAF) en temps réel.",descEn:"Queries official French registries (SIRENE, NAF codes) in real time."},bodacc:{family:"registre",fr:"BODACC",en:"BODACC",descFr:"Bulletin officiel : liquidations, ventes & cessions de fonds, cessations.",descEn:"Official bulletin: liquidations, business sales, closures."},local:{family:"registre",fr:"Moteur local (Maps + BODACC)",en:"Local engine (Maps + BODACC)",descFr:"Trouve les commerces de proximité de votre métier, ville par ville.",descEn:"Finds local businesses in your trade, city by city."},manual:{family:"manuel",fr:"Saisie manuelle",en:"Manual entry",descFr:"Les sociétés que vous ajoutez vous-même, évaluées comme les autres.",descEn:"Companies you add yourself, evaluated like the rest."},make:{family:"manuel",fr:"Autres (Make sur-mesure)",en:"Other (custom Make)",descFr:"Moteurs branchés spécialement pour votre thèse.",descEn:"Engines wired specifically for your thesis."},note:{family:"note",fr:"Note de recherche",en:"Research note",descFr:"Les sociétés à évaluer identifiées dans les notes de recherche Proplace.",descEn:"Companies to evaluate identified in Proplace research notes."},unknown:{family:"manuel",fr:"Moteur interne Stan",en:"Stan internal engine",descFr:"Détectée par le pipeline interne de Stan â la source précise n'a pas été journalisée.",descEn:"Detected by Stanâs internal pipeline â the precise source was not logged."},ma:{family:"ma",fr:"Opérations M&A",en:"M&A deals",descFr:"Les opérations M&A détectées chaque matin dans la presse de vos secteurs.",descEn:"M&A deals detected every morning in the trade press for your sectors."},memo:{family:"memo",fr:"Mémo public Proplace",en:"Proplace public memo",descFr:"Les sociétés déjà analysées en profondeur par Proplace (/analysis).",descEn:"Companies already analysed in depth by Proplace (/analysis)."}},gb={bot:{fr:"Bot",en:"Bot"}};function Ii(t){const n=(t||"").toLowerCase().normalize("NFD").replace(/[Ì-ͯ]/g,"").trim().replace(/[\s-]+/g,"_");return ua[n]?n:n.startsWith("note")?"note":n==="hn"?"hackernews":n==="competitor_exodus"||n==="alumni"?"departs":n==="manual_paste"?"manual":n==="find_similar_qualified"?"exa_similar":n.includes("crunchbase")?"crunchbase_search":n.includes("similar")?"exa_similar":n.includes("parallel")?"parallel":n.includes("webset")?"websets":n.includes("semantic")?"exa_semantic":n.includes("linkedin_job")?"linkedin_jobs":n.includes("linkedin_post")?"linkedin_posts":n.includes("pappers")?"pappers_fr":n.includes("hacker")?"hackernews":n.includes("alert")?"google_alerts":n.includes("news")?"google_news":n.includes("editorial")||n.includes("edito")?"editorial":n.includes("fundrais")?"fundraising":n.includes("presse")||n.includes("veille")?"rss":n.includes("semantique")||n.includes("semantic")?"exa_semantic":n.includes("chass")||n.includes("similaire")?"exa_similar":n.includes("registre")||n.includes("sirene")?"pappers_fr":n.includes("recrut")||n.includes("emploi")?"linkedin_jobs":n.includes("levee")||n.includes("financement")?"fundraising":n.includes("job")?"linkedin_jobs":n.includes("depart")?"departs":n.includes("bodacc")?"bodacc":n.includes("manual")||n.includes("manuel")?"manual":n.includes("make")||n.includes("autre")?"make":n||"manual"}function Js(t){const n=ua[Ii(t)];return n?n.family:"manuel"}function ud(t,n){const r=Ii(t),i=gb[r];if(i)return i[n];const s=ua[r];return s?n==="fr"?s.fr:s.en:(t||"").replace(/_/g," ")}function Do(t,n){const r=ua[Ii(t)];return r?n==="fr"?r.descFr:r.descEn:""}function fb(t,n){return n==="fr"?pd[t].fr:pd[t].en}function zr(t){const n=ua[Ii(t)];return n!=null&&n.emoji?n.emoji:pd[Js(t)].emoji}const xb=["similar","media","funding","jobs","nomination","registre","manuel","ma","memo","note"],Sx=["partenariats","produits","regul","marche","evenements","listes","tribunes","media"],Lb={partenariats:{fr:"Partenariats & contrats",en:"Partnerships & contracts",emoji:"ð"},produits:{fr:"Produits & lancements",en:"Products & launches",emoji:"ð¦"},regul:{fr:"Réglementaire & litiges",en:"Regulation & disputes",emoji:"âï¸"},marche:{fr:"Bourse & marchés",en:"Markets & listings",emoji:"ð"},evenements:{fr:"Ãvénements",en:"Events",emoji:"ðï¸"},listes:{fr:"Listes & classements",en:"Lists & rankings",emoji:"ð"},tribunes:{fr:"Analyses & tribunes",en:"Analysis & op-eds",emoji:"ð"},media:{fr:"Actualités",en:"News",emoji:"ð°"}},jr={evenements:/\b(disrupt|viva\s?tech|vivatech|summit|conf[ée]rence|salon\b|pitch\s+marathon|
271side\s+event|exhibit\s+table|founder(?:'s)?\s+summit|webinar|colloque)\b/i,listes:/\b(\d+\s+(?:startup|scale-?ups?|companies|soci[eé]t[eé]s|hotspots?)|to\s+watch|hotspots?|classement|palmar[eè]s|\btop\s+\d+|funding rounds you need|every .{0,40} that has raised)\b/i,regul:/\b(licence|license|agr[ée]ment|autorisation|accr[ée]ditation|homologation|certification|r[ée]glementation|lawsuit|legal dispute|sued|investigation|enqu[eê]te|proc[eè]s|amende|fined|approves?\s+[â¬$£]|eu approves)\b/i,marche:/\b(ipo\b|cotation|listing|listed|bourse|covered bond|bond issue|introduit en bourse|spac\b)\b/i,partenariats:/\b(partnership|partenaire|partenariat|s['â]allie|allies with|signs? (?:with|a deal)|selected by|collabore|collaboration|joint venture|s['â]associe)\b/i,produits:/\b(lance|lancement|d[eé]voile|unveils?|launches?|releases?|nouvelle offre|new product|rolls out|met sur le march[eé])\b/i,tribunes:/\b(how to|pourquoi|comment\b|what .{0,40} (?:can|should) teach|le[cç]on|market (?:size|share|analysis|report)|inside the|why .{0,40} (?:is|are|matters)|the rise of|should europe|can europe)\b/i};function Ex(t){const n=`${t.headline_fr||""} ${t.headline||""} ${t.title||""}`;if(jr.evenements.test(n))return"evenements";if(jr.listes.test(n))return"listes";if(jr.regul.test(n))return"regul";if(jr.marche.test(n))return"marche";if(jr.partenariats.test(n))return"partenariats";if(jr.produits.test(n))return"produits";if(jr.tribunes.test(n))return"tribunes";const r=(t.company_name||t.name||"").trim();return!r||r.length<2?"tribunes":"media"}function vb(t,n){const r=Lb[t];return r.emoji+" "+(n==="en"?r.en:r.fr)}function U6(t){return!!t&&Sx.includes(t)}const bb=/([A-ZÃ-Ã][\w.&'â\-]{1,40}(?:\s+(?:et|&)\s+[A-ZÃ-Ã][\w.&'â\-]{1,40})?(?:\s+[A-ZÃ-Ã][\w.&'â\-]{1,40}){0,3})\s+(?:acquiert|rachète|s['â]apprête|reprend|prend le contrôle|buys|acquires)/i,yb=/^[A-Z]{2,}(?:\s*[·:,ââ-]\s*)+/,jb=new Set(["paris","france","europe","london","berlin","madrid","rome"]);function Ch(t){const n=(t||"").replace(yb,"").trim(),r=bb.exec(n);if(!r)return"";const i=(r[1]||"").trim();return i&&!jb.has(i.toLowerCase())?i:""}function _h(t,n="fr"){return n.toLowerCase().startsWith("en")?t?`What ${t} could buy next`:"What they could buy next":t?`Ce que ${t} pourrait acheter après`:"Ce quâils pourraient acheter après"}function Th(t){var r,i;const n=(s,a)=>{let o=s;for(let c=0;c<a&&o;c++)if(o=o.previousElementSibling,o&&/^H[1-6]$/.test(o.tagName))return Ch(o.textContent||"");return""};return n(t,16)||n(t.closest("aside, .pros-inline"),24)||Ch(((i=(r=t.closest(".ed-decrypt, .ed-decrypt-solo"))==null?void 0:r.querySelector("h4, h3, h2"))==null?void 0:i.textContent)||"")}const qh=/coup d['â]après|the next move/i;function Nx(t,n="fr"){t.querySelectorAll(".pros-il").forEach(r=>{qh.test(r.textContent||"")&&(r.textContent=`ð® ${_h(Th(r),n)}`)}),t.querySelectorAll(".aa-pros").forEach(r=>{const i=r.innerHTML||"";if(!qh.test(i))return;const s=_h(Th(r),n);r.innerHTML=i.replace(/ð®\s*(?:Le coup d['â]après|The next move)\s*:/i,`ð® ${s} :`)})}const wb=()=>{try{return!!new URL(window.location.href).searchParams.get("preview")}catch{return!1}},kb=t=>t.slice().sort().join("�"),Xl=t=>{try{return new Date().toLocaleDateString(t)}catch{return""}};function hd(t){try{return JSON.parse(localStorage.getItem(t)||"null")}catch{return null}}function xs(t,n){if(!wb())try{localStorage.setItem(t,JSON.stringify(n))}catch{}}function V6(t,n,r,i){const s="cbv:"+t,a="cbvv:"+t,o=Array.from(new Set(n.map(p=>p.trim()).filter(Boolean))),c=hd(s),l=hd(a)||{},d={firstVisit:!(c&&c.n&&c.n.length),added:[],gone:[],changed:[],lastDate:c&&c.d||Xl(i),fp:""};if(c&&c.n&&c.n.length){d.added=o.filter(u=>c.n.indexOf(u)<0),d.gone=c.n.filter(u=>o.indexOf(u)<0),d.fp=kb(d.added);const p=typeof c.seen=="string"?c.seen:"";d.added.length&&p===d.fp&&(d.added=[])}for(const p of Object.keys(l)){const u=r[p];u&&l[p]&&u!==l[p]&&d.changed.push({name:p,before:l[p],after:u})}return d.firstVisit?(xs(s,{n:o,d:Xl(i),seen:""}),xs(a,r)):!d.added.length&&!d.changed.length&&(xs(s,{n:o,d:Xl(i),seen:c&&c.seen||""}),xs(a,r)),d}function fn(t,n){const r=hd("ppmap:"+t);return r??n}function ft(t,n){xs("ppmap:"+t,n)}const $s="ppmap:cockpit-session";function Fh(){const t=fn("token","");if(!/^[A-Za-z0-9]{16}$/.test(t)||!Ax(fn("tokenAt",0),Date.now()))return null;const n=fn("tokenFund",null);return!n||n.token!==t||!n.fund?null:{token:t,fund:n.fund}}function Ab(t,n){if(!t||!n)return;const r=fn("tokenFund",null);if(!(r&&r.token===t&&r.fund===n)){ft("tokenFund",{token:t,fund:n});try{window.dispatchEvent(new CustomEvent($s))}catch{}}}function Sb(){ft("token",""),ft("tokenAt",0),ft("memberReady",!1),ft("tokenFund",null)}function Eb(t){const[n,r]=m.useState(()=>Fh());return m.useEffect(()=>{const i=()=>r(Fh());return i(),window.addEventListener($s,i),window.addEventListener("storage",i
271),()=>{window.removeEventListener($s,i),window.removeEventListener("storage",i)}},[t]),n}function Oh(){let t="";try{const r=new URLSearchParams(window.location.search);t=r.get("cb")||r.get("token")||""}catch{return null}if(!/^[A-Za-z0-9]{16}$/.test(t))return null;const n=fn("tokenFund",null);return!n||n.token!==t||!n.fund?null:{token:t,fund:n.fund}}function Nb(){const[t,n]=m.useState(()=>Oh());return m.useEffect(()=>{const r=()=>n(Oh());return r(),window.addEventListener($s,r),()=>window.removeEventListener($s,r)},[]),t}function ec(t,n=""){let r=(n||"").trim();if(!r)try{r=new URLSearchParams(window.location.search).get("email")||""}catch{r=""}return`/cibles/${t}/`+(r?`?email=${encodeURIComponent(r)}`:"")}function Cb(t,n){const r=i=>(i||"").toLowerCase().replace(/[^a-z0-9]+/g,"");return!!r(t)&&r(t)===r(n)}const we="https://alexandre-79537--proplace-chat-proxy-fastapi-app.modal.run",bn=()=>typeof location<"u"&&location.hostname.endsWith("proplace.co")?"":"https://proplace.co",xn=()=>{const t=new Date,n=r=>String(r).padStart(2,"0");return`${t.getFullYear()}-${n(t.getMonth()+1)}-${n(t.getDate())}`};let Pa=null;function gr(){return Pa||(Pa=fetch(bn()+"/actualites/operations/feed.json",{cache:"no-cache"}).then(t=>t.ok?t.json():null).catch(()=>(Pa=null,null))),Pa}function md(t){return(t||"").replace(/'|'|'/gi,"'").replace(/"/gi,'"').replace(/&/gi,"&").replace(/\s+/g," ").trim().toLowerCase()}function _b(t,n){const r=(t||"").replace(/\s+/g," ").trim();if(!r||/^https?:\/\/\S+$/i.test(r)||/^(FR|EN|ES|DE|IT|PT|NL|AR|EU|UK|US|GB|INT)$/i.test(r)||/^[â¬$£]?\s*\d[\d\s.,]*\s*(Mâ¬|Mdâ¬|kâ¬|mâ¬)?\s*·\s*[A-Z]{2}$/i.test(r))return!0;const i=md(n||""),s=md(r);return!i||!s?!1:s===i?!0:s.length>=40&&(i.startsWith(s)||s.startsWith(i))}function Cx(t){var r;const n=(((r=t.querySelector("h4"))==null?void 0:r.textContent)||"").replace(/\s+/g," ").trim();for(const i of Array.from(t.querySelectorAll("p")))i.classList.contains("art-srcline")||i.closest(".art-srcline")||_b(i.textContent||"",n)&&i.remove()}function Tb(t){const n=new Set;t.querySelectorAll(".ed-decrypt, .ed-decrypt-solo").forEach(r=>{var s;const i=md(((s=r.querySelector("h4"))==null?void 0:s.textContent)||"");i&&(n.has(i)?r.remove():n.add(i))})}const tc=new Map;function _x(t){const n=(t||"").slice(0,10);if(!tc.has(n)){const r=s=>fetch(bn()+s,{cache:"no-cache"}).then(a=>a.ok?a.json():null).catch(()=>null),i=(n?r(`/actualites/operations/edition-${n}.json`):Promise.resolve(null)).then(s=>s||r("/actualites/operations/edition.json").then(a=>a&&(!n||(a.date||"").slice(0,10)===n)?a:null));tc.set(n,i)}return tc.get(n)}let gd=null;function ei(t,n,r=""){if(!/^\d{4}-\d{2}-\d{2}$/.test(t||"")){gd=null;return}gd={day:t,doc:n,...r.trim()?{sector:r.trim()}:{}}}function H6(){return gd}let Ia=null;function Tx(){return Ia||(Ia=fetch(bn()+"/actualites/today.json",{cache:"no-cache"}).then(t=>t.ok?t.json():null).catch(()=>(Ia=null,null))),Ia}function Y6(t){if(!t||typeof DOMParser>"u")return t||"";try{const r=new DOMParser().parseFromString(`<div id="nl">${t}</div>`,"text/html").getElementById("nl");return r?(r.querySelectorAll("script,iframe,object,embed,form,input,button").forEach(i=>{i.matches("button.tb-eval")||i.remove()}),r.querySelectorAll("*").forEach(i=>{if([...i.attributes].forEach(s=>{const a=s.name.toLowerCase(),o=s.value,c=a==="class"||a==="style"||a==="alt"||a==="width"||a==="height"||a==="type"||a.startsWith("data-"),l=(a==="href"||a==="src")&&(/^https?:\/\//i.test(o)||o.startsWith("/")||o.startsWith("data:image/"));!c&&!l&&i.removeAttribute(s.name)}),i.tagName==="A"&&i.getAttribute("href")){const s=i.getAttribute("href")||"";/^https?:\/\//i.test(s)&&(i.setAttribute("target","_blank"),i.setAttribute("rel","nofollow noopener"))}}),(r.innerHTML||"").trim()):t}catch{return t}}const Da=new Map;function za(t,n){const r=(t||"").replace(/^https?:\/\/[^/]+/,"").split("?")[0];if(!r||!/^\d{4}-\d{2}-\d{2}$/.test(n))return Promise.resolve(null);const i=Xs(),s=n+" "+r+" "+i;return Da.has(s)||Da.set(s,fetch(bn()+r,{cache:"no-cache"}).then(a=>a.ok?a.text():"").then(a=>
271a?qb(a,n,r):null).catch(()=>(Da.delete(s),null))),Da.get(s)}function Xs(){return typeof document>"u"?"fr":(document.documentElement.getAttribute("data-pplang")||document.documentElement.lang||"").toLowerCase().startsWith("en")?"en":"fr"}function qx(t,n){const r=n==="en"?".i18n-fr":".i18n-en",i=n==="en"?".i18n-en":".i18n-fr";t.querySelectorAll(r).forEach(s=>s.remove()),t.querySelectorAll(i).forEach(s=>{const a=s.parentNode;if(!a){s.remove();return}for(;s.firstChild;)a.insertBefore(s.firstChild,s);a.removeChild(s)})}function qb(t,n,r){var l,d,p;if(typeof DOMParser>"u")return null;let i;try{i=new DOMParser().parseFromString(t,"text/html")}catch{return null}const s=i.querySelector("article.ppart, article.mk-edito");if(!s)return null;qx(s,Xs()),s.querySelectorAll("section.pp-ck, iframe, .pager, a.back, .nlcta, .cta-box, .mk-nl, nav, header, footer, .pp-days, .pp-live").forEach(u=>u.remove()),s.querySelectorAll("details").forEach(u=>{u.open=!0});const a=(((l=s.querySelector("h1"))==null?void 0:l.textContent)||"").replace(/\s+/g," ").trim(),o=(((d=s.querySelector(".mk-lead, .art-lead, .lead"))==null?void 0:d.textContent)||((p=s.querySelector("h1 + p:not(.pubdate)"))==null?void 0:p.textContent)||"").replace(/\s+/g," ").trim();s.classList.contains("mk-edito")&&s.querySelectorAll("h1, .pubdate").forEach(u=>u.remove());const c=s.innerHTML.trim();return c?{date:n,url:r,title_fr:a,lead_fr:o,html_fr:c,html_en:"",toc_fr:""}:null}const Fb=/^(french\s*tech(\s*\d+)?|south\s*summit(\s*\d+)?|vivatech(\s*\d+)?|web\s*summit(\s*\d+)?|ces\s*\d*|mwc\s*\d*|maddyness|les\s*echos|usine\s*nouvelle|sifted|techcrunch|programme|candidatures?|tendances?|newsletter|lbo|mbo|obo|ipo|m&a|vc|pe)$/i,Ob=new Set(["a","an","the","le","la","les","l","un","une","de","des","du","d","of","and","et","for","pour","in","en","new","nouvelle","nouveau","top","best","startup","startups","start","up","scaleup","scaleups","scale","company","companies","entreprise","entreprises","société","societe","sociétés","firm","firms","group","groupe","holding","holdings","partners","partner","capital","ventures","venture","fund","funds","fonds","investor","investors","investisseur","investisseurs","investment","investments","bank","banque","lab","labs","solution","solutions","service","services","platform","plateforme","software","logiciel","digital","numérique","tech","technology","technologies","global","international","industries","industry","network","networks","funding","financement","round","roundup","seed","pre","series","série","serie","raise","levée","levee","acquisition","acquisitions","deal","deals","ipo","m","news","report","fintech","insurtech","healthtech","medtech","biotech","proptech","legaltech","edtech","foodtech","agritech","cleantech","climate","climatetech","ai","ia","saas","logistics","logistique","health","santé","sante","insurance","assurance","energy","énergie","mobility","mobilité","retail","food","travel","crypto","blockchain","cyber","cybersecurity","security","data","cloud","robotics","space","defense","défense","payments","payment","african","africaine","africain","european","européenne","européen","europe","french","français","française","francaise","british","uk","us","usa","american","américaine","américain","german","allemande","allemand","italian","italienne","italien","spanish","espagnole","espagnol","swiss","suisse","belgian","belge","dutch","nordic","asian","indian","chinese","japanese","canadian","australian","latam","latin","middle","east","eastern","west","western","north","northern","south","southern","emerging","local","regional"]);function Mh(t){const n=(t||"").toLowerCase().replace(/[â']/g," ").split(/[\s\-/,&+().:;]+/).filter(Boolean);return!n.length||n.every(r=>Ob.has(r))}function Mb(t,n){const r=(t||"").trim();if(!r||!n||!Mh(r))return r;const i=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),s=new RegExp(`((?:[A-ZÃ-Ã0-9][\\w&.'â-]*\\s+){1,3})${i}\\b`).exec(n);if(!s)return r;const a=(s[1]+r).replace(/\s+/g," ").trim();return Mh(a)?r:a}function dl(t){const n=(t||"").trim();return!(n.length<2||n.length>
27160||Fb.test(n)||/\b(summit|forum|salon|conférence|conference|awards?)\b/i.test(n))}let Ba=null;function Cp(){return Ba||(Ba=fetch(bn()+"/actualites/operations/manifest.json",{cache:"no-cache"}).then(t=>t.ok?t.json():[]).then(t=>Array.isArray(t)?t:[]).catch(()=>(Ba=null,[]))),Ba}function Fx(t){const n=(t||"").trim();return n.length<2||!dl(n)?"":n.toLowerCase()}const Rb=new Set(["dans","pour","avec","sans","sous","entre","vers","chez","cette","ces","leur","leurs","elle","elles","nous","vous","tout","tous","toute","toutes","plus","moins","tres","bien","fait","faire","quand","comme","mais","donc","ainsi","alors","apres","avant","depuis","encore","aussi","deux","trois","quatre","cinq","sont","être","etre","avoir","the","and","with","from","that","this","what","when","their","have","been","will","pourquoi","comment","startup","startups","societe","societes","entreprise","entreprises","jour","annee","2026","millions","milliards"]);function Rh(t){const n=new Set;for(const r of(t||"").toLowerCase().normalize("NFD").replace(/[Ì-ͯ]/g,"").split(/[^a-z0-9]+/))r.length>=4&&!Rb.has(r)&&n.add(r);return n}function Pb(t,n,r,i){const s=(r||"").trim().toLowerCase();if(s.length>=3){for(let l=0;l<t.length;l++)if(!n.has(l)&&t[l].t.includes(s))return l;for(let l=0;l<t.length;l++){const d=(t[l].html||"").toLowerCase();if(!n.has(l)&&d.includes(s))return l}}const a=Rh(i||"");if(!a.size)return-1;let o=-1,c=0;for(let l=0;l<t.length;l++){if(n.has(l))continue;let d=0;for(const p of Rh(t[l].t))a.has(p)&&(d+=p.length>=8?2:1);d>c&&(c=d,o=l)}return c>=2?o:-1}function Ib(t){const n=(t==null?void 0:t.html_fr)||"";if(!n||typeof DOMParser>"u")return[];const r=[];try{const i=new DOMParser().parseFromString(n,"text/html");let s=Array.from(i.querySelectorAll(".ed-decrypt, .ed-decrypt-solo"));if(!s.length){const a=[];i.querySelectorAll("h4").forEach(o=>{const c=i.createElement("div");let l=o;for(;l&&(l===o||l.tagName!=="H4");){const d=l.nextElementSibling;if(c.appendChild(l.cloneNode(!0)),l=d,l&&l.tagName==="H4")break}a.push(c)}),s=a}for(const a of s){Nx(a,Xs());const o=a.querySelector("h4"),c=((o==null?void 0:o.textContent)||"").replace(/\s+/g," ").trim().toLowerCase();if(!c||(a.querySelectorAll("script, style, iframe, object, embed, .opcard").forEach(d=>d.remove()),a.querySelectorAll("*").forEach(d=>{const p=d.tagName==="A"?d.getAttribute("href"):null;for(const u of Array.from(d.attributes))d.removeAttribute(u.name);p&&/^https?:\/\//i.test(p)&&(d.setAttribute("href",p),d.setAttribute("target","_blank"),d.setAttribute("rel","nofollow noopener"))}),Cx(a),r.some(d=>d.t===c)))continue;const l=(a.innerHTML||"").trim();l&&r.push({t:c,html:l})}}catch{}return r}function G6(t){const n=(t==null?void 0:t.html_fr)||"";if(!n||typeof DOMParser>"u")return"";try{const i=new DOMParser().parseFromString(n,"text/html").body;return qx(i,Xs()),i.querySelectorAll("script, style, iframe, object, embed, nav, header, footer").forEach(s=>s.remove()),i.querySelectorAll(".ed-ecartes").forEach(s=>s.remove()),i.querySelectorAll("*").forEach(s=>{const a=s.tagName==="A"?s.getAttribute("href"):null,o=s.tagName==="IMG"?s.getAttribute("src"):null,c=s.tagName==="IMG"?s.getAttribute("alt"):null,l=s.getAttribute("class"),d=s.getAttribute("id"),p=[];for(const u of Array.from(s.attributes))u.name.startsWith("data-")&&p.push([u.name,u.value]),s.removeAttribute(u.name);l&&s.setAttribute("class",l),d&&s.setAttribute("id",d),p.forEach(([u,g])=>s.setAttribute(u,g)),a&&(/^https?:\/\//i.test(a)||a.startsWith("/"))&&(s.setAttribute("href",a),/^https?:\/\//i.test(a)&&(s.setAttribute("target","_blank"),s.setAttribute("rel","nofollow noopener"))),o&&(/^https?:\/\//i.test(o)||o.startsWith("/")||o.startsWith("data:image/"))&&(s.setAttribute("src",o),s.setAttribute("alt",c||""))}),i.querySelectorAll(".ed-decrypt, .ed-decrypt-solo").forEach(s=>{Cx(s)}),Tb(i),Nx(i,Xs()),(i.innerHTML||"").trim()}catch{return""}}let Ua=null;function Db(){return Ua||(Ua=fetch(bn()+"/analysis/manifest.json",{cache:"no-cache"}).then(t=>t.ok?t.json():null).then(t=>{if(!t)return null;if(Array.isArray(t))return t;const n=t.items||t.memos||t.entries;return Array.isArray(n)?n:null}).catch(()=>(Ua=null,null))),Ua}let Va=null;function _p(){return Va||(Va=fetch(bn()+"/research/manifest.json",{cache:"no-cache"}).then(t=>t.ok?t.json():null).then(t=>
271Array.isArray(t)?t:null).catch(()=>(Va=null,null))),Va}function Ox(t,n){const r=(n==="en"&&t.en&&t.en.title||t.title||"").trim();return r?{id:"n:"+(t.slug||r.toLowerCase().slice(0,40)),kind:"memo",memoType:"note",name:r.length>60?r.slice(0,57)+"â¦":r,cc:Kt((t.country_iso2||"").toUpperCase()),countryLabel:t.country_iso2||"",sector:t.industry||"",date:(t.published||"").slice(0,10),url:t.url||(t.slug?`/research/${t.slug}/`:""),tagline:(n==="en"&&t.en&&t.en.summary||t.summary||"").slice(0,220),website:t.mindmap||"",engine:"note",isToday:(t.published||"").slice(0,10)===xn()}:null}const zb=2500,Bb=9*60*1e3;function Ub(t){return/(youtube\.com\/|youtu\.be\/)/i.test(t||"")?"youtube":"url"}async function Vb(t,n){const r=await fetch(`${we}${t}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}),i=await r.json().catch(()=>({}));if(!r.ok||i.status==="error"||!i.job_id)throw new Error(i.message||`HTTP ${r.status}`);const s=Date.now();for(;;){if(await new Promise(c=>{setTimeout(c,zb)}),Date.now()-s>Bb)throw new Error("timeout");const a=await fetch(`${we}/research/status/${encodeURIComponent(i.job_id)}`).catch(()=>null);if(!a)continue;const o=await a.json().catch(()=>null);if(!(!o||o.status==="running"))return o}}async function W6(t){const n=(t.url||"").trim(),r=(t.text||"").trim();try{return await Vb("/research/ingest",{kind:n?Ub(n):"text",raw:r,source_url:n||(t.sourceUrl||"").trim(),email:t.email||"",cb_token:t.cbToken||""})}catch(i){return{status:"error",message:i instanceof Error?i.message:String(i)}}}async function Tp(t,n,r){try{const s=await(await fetch(`${we}${t}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)})).json().catch(()=>null);return s||r}catch{return r}}async function Q6(t,n={}){const r={...t};r.email=n.email||"",r.cb_token=n.cbToken||"";const i=await Tp("/research/save",r,{ok:!1,error:"réseau"});return!i||i.ok===!1?{ok:!1,error:(i==null?void 0:i.error)||"enregistrement refusé"}:{ok:!0,id:i.id,summary:i.summary}}async function Z6(t={}){const n=await Tp("/research/searches",{email:t.email||"",cb_token:t.cbToken||""},{});return Array.isArray(n==null?void 0:n.searches)?n.searches:[]}async function K6(t){const n=await Tp("/research/search-get",{id:t},{});return n!=null&&n.ok&&n.search?n.search:null}function Hb(){try{const t=new URL(window.location.href).searchParams,n=(t.get("cb")||t.get("token")||"").trim();if(n==="off")return"";if(/^[A-Za-z0-9]{16}$/.test(n))return n}catch{}return fn("token","")}function ha(){let t="";const n=typeof navigator<"u"&&kx(navigator.userAgent||""),r=typeof window>"u"||window.parent===window;try{const s=new URL(window.location.href).searchParams,a=(s.get("cb")||s.get("token")||"").trim(),o=s.get("embed")==="1";if(a==="off")o||(ft("token",""),ft("tokenAt",0),ft("memberReady",!1));else if(/^[A-Za-z0-9]{16}$/.test(a)){t=a;const c=fn("token","");!n&&!(o&&!r&&!!c&&c!==a)&&(ft("token",a),ft("tokenAt",Date.now()))}}catch{}if(!t){const s=fn("token",""),a=fn("tokenAt",0);s&&!Ax(a,Date.now())?(ft("token",""),ft("tokenAt",0)):s&&(t=s,n||ft("tokenAt",Date.now()))}if(!n)try{A2()}catch{}const i=Ge();return t?{mode:"client",token:t,fundType:i==null?void 0:i.fund_type,email:i==null?void 0:i.email}:i&&i.fund_type?{mode:rn(i.fund_type)?"free":"client",fundType:i.fund_type,email:i.email}:{mode:"anon"}}function Mx(t){const n=t||"";return!!(/(r[eè]gles?\s+(?:de\s+)?l['â]?acquisitions?|strat[eé]gie\s+d['â]acquisition|l['â]acquisition\s+en\s+\d{4}|red[eé]finit.{0,48}acquisition|comment\s+l['â]ia\b|\bseo\b.{0,120}\bgeo\b|\bgeo\b.{0,120}\bseo\b)/i.test(n)||/:\s*comment\b/i.test(n)&&!/\b(acquiert|acquires?|acquired|rachete|rachat de|merger|buyout)\b/i.test(n))}function qp(t){var l;if(typeof t=="string"||t==null){const d=(t||"").toLowerCase();return d==="ma"||d.startsWith("acq")||d.includes("fusion")?"ma":d==="vcpe"||d.includes("lev")||d.includes("fund")?"levee":"other"}const n=`${t.headline_fr||""} ${t.headline||""} ${t.title||""}`;if(Mx(n))return"other";if(/\b(?:sells?|sold|sale of|divests?|disposed of)\b.{0,80}\b(?:stake|share|shares|interest|asset|assets|business|pipeline|unit)\b/i.test(n))return"ma";const i=(t.rubrique||"").toLowerCase();if(i==="ma")return"ma";if(i==="levees")return"levee";if(i==="nominations"||i==="recrutements")return"other";const s=/\b(acquires?|acquired|acquisition|to acquire|buyout|merger|merges?|takeover|rach[eè]te|rachat|acquiert|m&a|in talks for .{0,48}sale)\b/i.test(n),a=/\b(l[eè]ve|lev[ée]e de fonds|raises?|raised|bags?|secures?|funding rounds?|funding deals?|series [a-e]|s[ée]rie [a-d]|seed|pre-seed|tour de table|first close)\b/i.test(n);if(i==="actualites"||i==="actualités"||!i){if(s&&!a)return"ma";if(a&&!s)return"levee";if(s&&a)return"ma"}const o=(((l=t.card)==null?void 0:l.kind)||"").toLowerCase();if(o==="rachat"||o==="en_cours"||o==="ma")return"ma";if(o==="levee_une"||o==="levee")return"levee";if(o==="recrutement"||o==="nomination")return"other";const c=String(t.item_kind||t.deal_type||"").toLowerCase();return["hiring","recrutement","jobs","nomination","appointment"].includes(c)?"other":c==="ma"||c.startsWith("acq")||c.includes("fusion")?"ma":c==="vcpe"||c.includes("lev")||c.includes("fund")?"levee":s?"ma":a?"levee":"other"}function Yb(t){const n=qp(t);return n==="ma"?"ma":n==="levee"?"fundraising":Gb(t)}function Gb(t){var s;const n=(t.rubrique||"").toLowerCase();if(n==="nominations")return"nominations";if(n==="recrutements")return"recrutements";const r=(((s=t.card)==null?void 0:s.kind)||"").toLowerCase();if(r==="nomination")return"nominations";if(r==="recrutement")return"recrutements";const i=`${t.headline_fr||""} ${t.headline||""} ${t.title||""}`;return/\b(nomination|nomm[eé]e?\b|appoint(?:s|ed|ment)?|named\s+(?:as\s+)?(?:ceo|cfo|cto|coo|vp|president|directeur)|devient\s+(?:ceo|directeur|présidente?|dg)\b)/i.test(i)?"nominations":/\b(recrute(?:nt|ra|r)?\b|embauche(?:nt|ra|r)?\b|is\s+hiring|hires\s+\d+|ouvre\s+\d+\s+postes?)/i.test(i)&&!/\b(licenci|layoff|plan\s+social)/i.test(i)?"recrutements":Ex({headline:t.headline,headline_fr:t.headline_fr,title:t.title,company_name:t.company_name})}const ma=t=>t.trim().toLowerCase();function fd(t,n){var f;const r=((n==="fr"?t.headline_fr:t.headline)||t.headline||t.title||"").trim(),i=Mb((t.company_name||"").trim(),`${t.headline||""} ${t.headline_fr||""}`),s=dl(i)?i:"",a=s||r||(t.title||"").trim();if(!a)return null;const o=(t.country||"").trim(),c=Kt(o&&o!=="?"?o:"Europe")||Kt(o),l=`${t.headline_fr||""} ${t.headline||""} ${t.title||""} ${a}`,d=Mx(l),p=d?"other":qp(t),u=(((f=t.card)==null?void 0:f.kind)||"").toLowerCase(),g=d&&["rachat","en_cours","ma","levee","levee_une"].includes(u)?void 0:t.card;return{id:"op:"+(t.op_id||ma(a)),kind:"op",name:a,cc:c||"",countryLabel:o&&o!=="?"?o:"Europe",sector:t.product_category_above||"",acquirer:(t.acquirer_name||"").trim()||void 0,stage:t.company_
271stage||"",date:(t._pool_date||t.published||"").slice(0,10),url:t.url||"",website:(t.website||"").trim()||void 0,domain:(t.domain||"").trim()||void 0,dealKind:p,rubrique:d?"actualites":(t.rubrique||"").toLowerCase()||void 0,engine:Yb(t),amountEur:t.amount_eur||0,headline:(n==="fr"?t.headline_fr:t.headline)||t.headline||t.title||"",match:t._match||void 0,card:g,noCo:!s||d?!0:void 0,isToday:(t._pool_date||"").slice(0,10)===xn()}}function Wb(t){const n=(t.name||"").trim();if(!n)return null;const r=typeof t.score=="string"?parseFloat(t.score):t.score;return{id:"m:"+(t.slug||ma(n)),kind:"memo",name:n,cc:Kt(t.country),countryLabel:t.country||"",sector:t.sector||t.industry||"",stage:t.stage||"",date:(t.published||"").slice(0,10),url:t.url||(t.slug?`/analysis/${t.slug}/`:""),tagline:t.tagline||"",score:isFinite(r)?r:void 0,memoType:t.memo_type||"",engine:"memo",isToday:(t.published||"").slice(0,10)===xn()}}function Qb(t){const n=(t||"").trim();if(!n)return"";const r=new Set(["unavailable","n/a","na","none","null","unknown","-","?"]);return n.split(/\s+/).every(s=>r.has(s.toLowerCase()))?"":n}const ts=/^(who we are|qui sommes[-\s]?nous|about us|about|à propos|a propos|our story|notre histoire|home|accueil|welcome|bienvenue|contact us|nous contacter|contact|our team|notre équipe|notre equipe|the company|our solutions?|nos solutions?|administrators?|l['â]entreprise)$/i,Zb=/\b(partner to|earn revenue|overview|funding news|recently funded|funding tracker|seed funding|funding alerts|who we are|qui sommes|student insurance partnership|health insurance excess|details and choice)\b/i,ns=/^(?:(?:and|et|&|\+|of|de|des|du|la|le|les|for|pour|your|votre|health|santé|sante|protection|insurance|insurances|assurance|assurances|prévoyance|prevoyance|brokerage|broker|courtage|courtier|solutions?|services?|consulting|conseil|advisory|software|platform|plateforme|group|groupe|international|internationale|global|official|site|officiel|expat|expatriés?|expatriates?|benefits?|employee|mutuelle|risk|risques?|management|wealth|finance|financial|life|vie|home|accueil|travel|voyage|care|medical|médical|student|students?|partnerships?|details?|choice|excess)\s*)+$/i,Ph=t=>(t||"").toLowerCase().replace(/[&+]/g,"and").replace(/[^a-z0-9]+/g,""),Kb={studcorp:"STUDCORP"},Jb=["linkedin.com","facebook.com","instagram.com","twitter.com","x.com","wikipedia.org","medium.com","substack.com","youtube.com","google.com","crunchbase.com","bloomberg.com","reuters.com"],$b=new Set(["ac","co","com","edu","gov","net","org"]);function Xb(t){const n=(t||"").toLowerCase().replace(/\.$/,"").split(".").filter(Boolean);if(!n.length)return{label:"",domain:""};let r=n.length>=2?n.length-2:0;return n.length>=3&&n[n.length-1].length===2&&$b.has(n[n.length-2])&&(r=n.length-3),{label:n[r],domain:n.slice(r).join(".")}}function ey(t,n=""){const r=(t||"").replace(/\s+/g," ").trim(),i=(n||"").replace(/^https?:\/\//i,"").replace(/^www\./i,"").split(/[/?#]/)[0].toLowerCase().replace(/:\d+$/,""),{label:s,domain:a}=Xb(i),o=Jb.some(f=>i===f||i.endsWith(`.${f}`)),c=s.replace(/-/g," "),l=!o&&s.length>=2?Kb[s]||c[0].toUpperCase()+c.slice(1):"",d=/\/(?:lamal-or-cmu|cmu-or-lamal)(?:[/?#]|$)/i.test(n||"");if((/^llm$/i.test(r)||/^cmu\s+ou\s+lamal(?:\b|\s*[:|ââ-])/i.test(r))&&(i==="comparea.ch"||i.endsWith(".comparea.ch"))&&d)return"CMU ou LAMal";if(l.toLowerCase()==="comparea"&&/\b(?:lamal|assurance|health insurance).*(?:frontalier|frontier worker)/i.test(r))return l;const p=r.split(/\s*(?:\||â|â)\s*|\s+-\s+|:\s+/).map(f=>f.trim()).filter(Boolean);if(p.length>=2){const f=o?"":Ph(s.replace(/-/g," "));if(f.length>=3){const S=p.find(E=>{const j=Ph(E);return!!j&&(j===f||j.startsWith(f)||j.length>=4&&f.startsWith(j))});if(S&&!ts.test(S)){const E=S.toLowerCase().replace(/^www\./,"").replace(/\.$/,"");return E===i||E===a?l:S}}const L=p.filter(S=>ts.test(S)),v=p.filter(S=>!ts.test(S));if(L.length&&v.length===1&&v[0].split(/\s+/).length<=5)return v[0];const y=p[p.length-1],h=p.slice(0,-1).join(" "),b=/\b(you|we|our|are|is|est|êtes|etes|sommes|votre|your)\b/i.test(h),x=h.split(/\s+/).filter(S=>/[\p{L}\p{N}]/u.test(S)).length;if(y.split(/\s+/).length<=3&&y.length<=32&&/^[A-ZÃ-Ã]/.test(y)&&!ns.test(y)&&(b||x>=4))return y;const w=p[0];if(ns.test(y)&&!ns.test(w)&&!ts.test(w)&&w.split(/\s+/).length<=6||!ns.test(w)&&!ts.test(w)&&w.split(/\s+/).length<=5&&(y.split(/\s+/).length>=4||y.length>=36))return w}const u=r.split(/\s+/).length>=7||Zb.test(r)||ns.test(r),g=/\/(?:articles?|blog|news|posts?|press(?:-release)?|stories?|insights?|reports?|features?)(?:\/|$)/i.test(n||"");return u&&l&&!g?l:r}function ty(t){const n=c=>(c||"").toLowerCase().replace(/[^a-z0-9]/g,""),r=c=>{if(c.kind!=="target")return"";let l=(c.domain||"").toLowerCase();if(!l)try{l=new URL(c.website||"").hostname.toLowerCase()}catch{l=""}l=l.replace(/^www\./,"");const d=n(l.split(".")[0]||"");return d.length<3?"":n((c.id||"").replace(/^t:/,"")+" "+(c.name||"")).includes(d)?l:""},i=c=>{try{return["","/"].includes(new URL(c.website||"").pathname)}catch{return!1}},s=(c,l)=>{const d=g=>[g.memoUrl?1:0,g.ceoStatus?1:0,i(g)?1:0,typeof g.score=="number"?g.score:-1],p=d(c),u=d(l);for(let g=0;g<p.length;g++)if(p[g]!==u[g])return p[g]>u[g];return String(c.modifiedAt||c.date||"")>String(l.modifiedAt||l.date||"")},a=new Map,o=[];for(const c of t){const l=r(c);if(!l){o.push(c);continue}const d=a.get(l);if(d===void 0){a.set(l,o.length),o.push(c);continue}s(c,o[d])&&(o[d]=c)}return o}function ny(t,n=0){const r=(t.company||"").trim(),i=ey(r,String(t.website||t.domain||t.url||""));return i?{order:n,id:"t:"+ma(r||i),kind:"target",name:i,cc:Kt(t.country),countryLabel:t.country||"",sector:t.sector||"",market:t.market||"",tags:Array.isArray(t.tags)?t.tags.filter(s=>typeof s=="string"):[],provQuery:t.prov_query||"",provUrl:t.prov_url||"",angleId:t.angle_id||"",gateAngleId:t.gate_angle_id||"",stage:t.stage||"",date:(t.detected||"").slice(0,10),verdict:t.verdict||t.status||"",cribleStatus:typeof t.status=="string"?t.status:"",verdictDate:(t.verdict_date||"").slice(0,10),modifiedAt:String(t.modified_at||""),ceoStatus:t.ceo_status||"",score:typeof t.score=="number"?t.score:void 0,engine:t.engine?Ii(t.engine):"",memoUrl:t.memo_url||"",tagline:t.tagline||"",website:t.website||"",reasoning:t.reasoning||"",ceoNote:t.ceo_note||"",summary:t.summary||"",convictionScore:typeof t.conviction_score=="number"?t.conviction_score:void 0,angle:t.angle||"",engagement:typeof t.engagement=="number"?t.engagement:void 0,airtableId:t.airtable_id||"",dealId:t.deal_id||"",checkId:t.check_i
271d||"",city:t.city||"",address:String(t.address||"").trim()||void 0,lat:typeof t.lat=="number"&&Number.isFinite(t.lat)?t.lat:void 0,lon:typeof t.lon=="number"&&Number.isFinite(t.lon)?t.lon:void 0,geoSrc:String(t.geo_src||"")||void 0,sourcedAt:String(t.sourced_at||"")||void 0,checkedAt:String(t.checked_at||"")||void 0,provSeed:String(t.prov_seed||"")||void 0,provOrigin:String(t.prov_origin||"")||void 0,provDay:String(t.prov_day||"")||void 0,provMotive:String(t.prov_motive||"")||void 0,hot:t.hot&&typeof t.hot=="object"?t.hot:null,memoPdfUrl:t.memo_pdf_url||"",contactName:Qb(t.contact_name||[t.first_name,t.last_name].filter(Boolean).join(" ")),contactEmail:t.email||"",contactPhone:String(t.phone||"").trim()||void 0,contactLinkedin:t.linkedin||"",linkedinCompany:t.linkedin_company||"",domain:t.domain||"",memoType:t.memo_type||"",isToday:(t.detected||"").slice(0,10)===xn()}:null}function Ih(t){return(t||"").toLowerCase().replace(/[^a-z0-9]/g,"")}const Rx="2LceiQMTJvjZjFMx";async function Fp(){try{const r=await fetch(bn()+"/actualites/operations/signaux.json",{cache:"no-cache"});if(r.ok){const i=await r.json(),s=i&&i.signaux||[];if(Array.isArray(s)&&s.length){const a=new Set,o=[];for(const c of s){const l=String(c&&c.company||"").trim();if(!l)continue;const d=ma(l);a.has(d)||(a.add(d),o.push({id:"sig:"+d,kind:"target",pub:!0,name:l,cc:Kt(String(c.country||"")),countryLabel:String(c.country||""),sector:String(c.sector||""),stage:String(c.stage||""),date:String(c.detected||c.hot&&c.hot.date||"").slice(0,10),engine:"",hot:c.hot&&typeof c.hot=="object"?c.hot:null}))}if(o.length)return o}}}catch{}const t=await Op(Rx);if(!t)return[];const n=new Set;return t.targets.filter(r=>{const i=r.name.trim().toLowerCase();return n.has(i)?!1:(n.add(i),!0)}).map(r=>({...r,pub:!0}))}async function Px(t,n){const r=t.filter(a=>a.memoType==="note"&&a.url),i=[],s=new Set;for(let a=0;a<r.length;a+=8){const o=r.slice(a,a+8),c=await Promise.all(o.map(l=>fetch(bn()+l.url.replace(/\/?$/,"/")+"card.json").then(d=>d.ok?d.json():null).catch(()=>null)));o.forEach((l,d)=>{const p=c[d];if(!p)return;const u=n==="en"&&p.en||p.fr||p,g=u.prospective&&u.prospective.companies_to_evaluate||[];for(const f of Array.isArray(g)?g:[]){const L=(typeof f=="string"?f:f&&(f.name||f.company)||"").trim();if(!L)continue;const v=ma(L);if(s.has(v))continue;s.add(v);const y={id:"nl:"+v,kind:"target",pub:!0,name:L,cc:typeof f=="object"&&f&&Kt(String(f.country||""))||l.cc,countryLabel:typeof f=="object"&&f&&String(f.country||"")||l.countryLabel||"",sector:typeof f=="object"&&f&&String(f.sector||f.industry||"")||l.sector||"",stage:typeof f=="object"&&f&&String(f.stage||"")||"",date:l.date,engine:"note",website:typeof f=="object"&&f&&String(f.website||f.url||"")||"",reasoning:typeof f=="object"&&f&&String(f.reason||f.why||"")||"",noteTitle:l.name,noteUrl:l.url,verdict:"",ceoStatus:"",memoUrl:"",isToday:l.isToday};i.push(y)}})}return i}async function Op(t,n=""){try{const r=await fetch(`${we}/cibles/list.json?token=${encodeURIComponent(t)}${n?`&tab=${encodeURIComponent(n)}`:""}`);if(!r.ok)return null;const i=await r.json(),s=i.leads||i.items||[];return t!==Rx&&Ab(t,String(i.fund||"")),{fund:String(i.fund||""),marketEstimate:typeof i.market_estimate=="number"&&i.market_estimate>0?i.market_estimate:void 0,criteria:i.criteria&&typeof i.criteria=="object"?i.criteria:void 0,stats:i.stats&&typeof i.stats=="object"?i.stats:void 0,generatedAt:String(i.generated_at||""),targets:(()=>{const a=new Set,o=[];return s.forEach((c,l)=>{const d=ny(c,l);!d||a.has(d.id)||(a.add(d.id),o.push(d))}),ty(o)})()}}catch{return null}}async function ry(t){try{const n=await fetch(`${we}/cibles/memo-runs?token=${encodeURIComponent(t)}`);if(!n.ok)return null;const r=await n.json();return{runs:r.runs||[],now:typeof r.now=="number"?r.now:Date.now()/1e3}}catch{return null}}async function J6(t){const n=await ry(t);return n?n.runs:[]}async function $6(t,n,r){try{const i=new URLSearchParams({token:t,company:n});r&&i.set("check_id",r);const s=await fetch(`${we}/cibles/dossier-full?${i.toString()}`);if(!s.ok)return null;const a=await s.json();return!a||a.ok!==!0?null:{reasoning:String(a.reasoning||""),cribleStatus:String(a.crible_status||""),score:typeof a.score=="number"?a.score:null,summaryHtml:String(a.summary_html||""),convictionScore:typeof a.conviction_score=="number"?a.conviction_score:null,verdict:String(a.verdict||"")}}catch{return null}}async function X6(t,n,r){try{return(await fetch(`${we}/cibles/memo-run-action`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,company:n,action:r})})).ok}catch{return!1}}async function ew(t,n){try{const r=await fetch(`${we}
271/cibles/dispatch-rate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,per_day:n})});if(!r.ok)return null;const i=await r.json();return typeof i.per_day=="number"?i.per_day:n}catch{return null}}async function iy(t,n){try{const i=await(await fetch(`${we}/cibles/set-status`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,...n})})).json().catch(()=>({}));return{ok:!!i.ok,error:i.error,skipped:!!i.skipped}}catch{return{ok:!1,error:"network"}}}async function sy(){try{const t=await fetch(bn()+"/actualites/operations/world.json",{cache:"no-cache"});return t.ok?await t.json():null}catch{return null}}async function tw(t,n){try{const r=await fetch(`${we}/cibles/similar`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,target:n,who:"worldmap"})});if(!r.ok)return null;const i=await r.json();return{ok:!!i.ok,verdict:i.verdict,results:Array.isArray(i.results)?i.results:[]}}catch{return null}}async function nw(t,n,r,i=6){try{const s=await fetch(`${we}/cibles/prospect`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,mode:n,query:r.slice(0,600),limit:i})});if(!s.ok)return null;const a=await s.json();return{ok:!!a.ok,verdict:a.verdict,found:a.found,results:Array.isArray(a.results)?a.results:[]}}catch{return null}}async function Ix(t,n,r="",i){try{const s=i&&Object.keys(i).length?i:Ep(Dr(n)),a=await fetch(`${we}/cibles/evaluate`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,q:n.slice(0,200),who:r,...s})}),o=await a.json().catch(()=>({}));return o.company&&Object.keys(s).length&&fs(o.company,{pitch_url:s.pitch_url||s.pitch_deck_url||"",linkedin:s.linkedin||"",product_url:s.product_url||"",pricing_url:s.pricing_url||"",team_url:s.team_url||""}),a.ok?o:{ok:!1,verdict:"unresolved",reason:o.detail||`HTTP ${a.status}`}}catch(s){return{ok:!1,verdict:"unresolved",reason:String(s)}}}async function rw(t){try{const n=await fetch(`${we}/cibles/reactions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t})});if(!n.ok)return null;const r=await n.json().catch(()=>({})),s=[...Array.isArray(r.reactions)?r.reactions:[]].filter(a=>a.kind==="thesis_fit"&&["yes","partial","no"].includes(a.target||"")).sort((a,o)=>String(o.ts||"").localeCompare(String(a.ts||"")))[0];return s?{fit:s.target,note:String(s.message||""),ts:String(s.ts||"")}:null}catch{return null}}async function iw(t){const n=new Map;try{const r=await fetch(`${we}/cibles/reactions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t})});if(!r.ok)return n;const i=await r.json().catch(()=>({}));[...Array.isArray(i.reactions)?i.reactions:[]].sort((a,o)=>(a.ts||0)-(o.ts||0)).forEach(a=>{const o=(a.target||"").trim().toLowerCase();o&&(a.kind==="yes"||a.kind==="no")&&n.set(o,a.kind)})}catch{}return n}async function sw(t){const n=new Map;try{const r=await fetch(`${we}/cibles/approach-map`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t})});if(!r.ok)return n;const i=await r.json().catch(()=>({})),s=i.map||i.approaches||{};Object.entries(s).forEach(([a,o])=>{!a||!o||typeof o!="object"||n.set(a.trim().toLowerCase(),{stage:String(o.stage||"todo"),stamps:o.stamps&&typeof o.stamps=="object"?o.stamps:{}})})}catch{}return n}async function aw(t,n){try{const i=await(await fetch(`${we}/cibles/deal-stage`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,...n})})).json().catch(()=>({}));return{ok:!!i.ok,stale:!!i.stale}}catch{return{ok:!1}}}const ay=new Set(["analysis_request","fast_request","detailed_request","detailed_regen"]);function oy(t){var i;const n={};try{const s=t??(typeof window<"u"?window.location.search:""),a=new URLSearchParams(s||""),o=String(a.get("credit_cap")||"").trim(),c=String(a.get("credit_exp")||"").trim();o&&c&&(n.credit_cap=o,n.credit_exp=c)}catch{}const r=String(((i=Ge())==null?void 0:i.member_session)||"").trim();return r&&(n.session=r),n}
271async function ly(t,n,r,i="",s="",a="",o=""){try{const c=await fetch(`${we}/cibles/react`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,kind:n,target:r,message:i,sector:s,who:a,via:"worldmap",...o?{check_id:o}:{},...ay.has(n)?{...Ep(Dr(r)),...oy()}:{}})}),l=await c.json().catch(()=>({})),d=l.detail&&typeof l.detail=="object"?l.detail:null,p=l.balance||(d==null?void 0:d.balance);return{ok:c.ok&&l.ok!==!1,status:c.status,triggered:typeof l.triggered=="boolean"?l.triggered:void 0,dedup:!!l.dedup,error:String(l.error||(d==null?void 0:d.error)||""),message:String(l.message||(d==null?void 0:d.message)||""),cost:typeof l.cost=="number"?l.cost:typeof(d==null?void 0:d.cost)=="number"?d.cost:void 0,balance:p||null}}catch{return{ok:!1,status:0,error:"network_error"}}}async function ow(t){try{const n=await fetch(`${we}/cibles/public-favoris?token=${encodeURIComponent(t)}`);if(!n.ok)return[];const r=await n.json();return Array.isArray(r.favoris)?r.favoris:[]}catch{return[]}}async function lw(t,n,r){try{return(await fetch(`${we}/cibles/fav-sync`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,op:n,remove:r})})).ok}catch{return!1}}async function cw(t,n,r="email"){try{return await(await fetch(`${we}/cibles/prepare-approach`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,company:n,channel:r})})).json().catch(()=>null)}catch{return null}}function cy(t,n){var l;if(Array.isArray(t.pool_order)||typeof t.per_day=="number")return t;const r=n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&"),i=d=>String(d||"").replace(new RegExp(`\\s+for\\s+${r}\\s*$`,"i"),"").trim(),s=t.full_pool||[],a=t.scheduled||[],o=((l=a.find(d=>d.day_offset===1))==null?void 0:l.memos)||[],c=Number(t.memos_per_day);return{per_day:Number.isFinite(c)?Math.max(0,Math.min(10,c)):void 0,tomorrow:o.slice(0,10).map(d=>({name:i(d.company),score:d.score})),analyzed_today:(t.dispatched_today||[]).slice(0,20).map(d=>({name:i(d.company),state:String(d.state||""),age_min:d.age_min,memo_type:String(d.memo_type||""),memo_url:String(d.memo_url||"")})),pool_order:s.slice(0,120).map(d=>i(d.company)),pool_meta:s.slice(0,120).map(d=>({name:i(d.company),score:d.score,rawName:String(d.company_raw||""),checkId:String(d.check_id||""),website:String(d.website||""),excerpt:String(d.reasoning_excerpt||"").slice(0,200),fresh:!!d.fresh})),scheduled:a.map(d=>({date:String(d.date||""),day_offset:Number(d.day_offset)||0,day_label:String(d.day_label||""),names:(d.memos||[]).map(p=>i(p.company))})),offre:t.offre||void 0,in_progress:(t.in_progress||[]).slice(0,20).map(d=>({name:i(d.company),state:String(d.state||d.last_step||""),age_min:Number(d.age_min)||0,memo_type:String(d.memo_type||"")})),done_count:(t.done_all||[]).length}}async function dw(t){try{const n=await fetch(`${we}/cibles/market-sizing?token=${encodeURIComponent(t)}`);if(!n.ok)return null;const r=await n.json();return r&&r.ok?r:null}catch{return null}}const dy=12e4,xd=new Map,Ha=new Map;function pw(t){const n=xd.get(t);return n?n.v:null}async function uw(t,n=!1){const r=xd.get(t);if(!n&&r&&Date.now()-r.t<dy)return r.v;if(!n){const s=Ha.get(t);if(s)return s}const i=(async()=>{try{const s=await fetch(`${we}/v3/memo-pipeline?fund=${encodeURIComponent(t)}`);if(!s.ok)return null;const a=await s.json();if(!a||typeof a!="object")return null;const o=cy(a,t);return xd.set(t,{t:Date.now(),v:o}),o}catch{return null}})();return Ha.set(t,i),i.finally(()=>{Ha.get(t)===i&&Ha.delete(t)}),i}async function tt(t,n){try{const r=await fetch(`${we}/cibles/${t}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}),i=await r.json().catch(()=>({}));return{status:r.status,j:i}}catch{return{status:0,j:{}}}}async function hw(t){const{status:n,j:r}=await tt("email-preview",{token:t});return n===429?{ok:!1,busy:!0}:{ok:!!r.ok,subject:String(r.subject||""),html:String(r.html||""),pending:typeof r.pending_count=="number"?r.pending_count:void 0}}async function mw(t){const{j:n}=await tt("email-test",{token:t});return{ok:!!n.ok,sentTo:String(n.sent_to||""),error:String(n.error||"")}}async function gw(t,n){try{const r=n?await fetch(`${we}/cibles/weekly-prefs`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,...n})}):await fetch(`${we}/cibles/weekly-prefs?token=${encodeURIComponent(t)}`);if(!r.ok)return null;const i=await r.json();return i&&i.ok?i:null}catch{return null}}async function fw(t){const{status:n,j:r}=await tt("weekly-preview",{token:t});return n===429?{ok:!1,busy:!0}:{ok:!!r.ok,subject:String(r.subject||""),html:String(r.html||"")}}async function xw(t){const{j:n}=await tt("weekly-test",{token:t});return{ok:!!n.ok,sentTo:String(n.sent_to||""),error:String(n.error||"")}}async function Lw(t,n){try{const r=n?await fetch(`${we}/cibles/memo-alert-prefs`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,...n})}):await fetch(`${we}/cibles/memo-alert-prefs?token=${encodeURIComponent(t)}`);if(!r.ok)return null;const i=await r.json();return i&&i.ok?i:null}catch{return null}}async function vw(t,n){const{status:r,j:i}=await tt("memo-alert-preview",{token:t,sections:n});return r===429?{ok:!1,busy:!0}:{ok:!!i.ok,subject:String(i.subject||""),html:String(i.html||"")}}async function bw(t,n){const{status:r,j:i}=await tt("memo-alert-test",{token:t,sections:n});return r===429?{ok:!1,error:"cooldown"}:{ok:!!i.ok,sentTo:String(i.sent_to||""),error:String(i.error||"")}}async function yw(t,n){try{const r=n?await fetch(`${we}/cibles/email-prefs`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,...n})}):await fetch(`${we}/cibles/email-prefs?token=${encodeURIComponent(t)}`);return r.ok?await r.json():null}catch{return null}}async function jw(t,n){const r=(n||"").trim();if(r.length<19)return 0;const i=`${r.slice(0,19)}Z`,{j:s}=await tt("fresh-count",{token:t,since:i});return s&&s.ok&&typeof s.count=="number"?s.count:0}async function ww(t){const{j:n}=await tt("status-map",{token:t});return n&&n.ok&&Array.isArray(n.statuses)?n.statuses:[]}async function kw(t,n,r){const{status:i,j:s}=await tt(t,{token:n,lang:r});if(i===403)return{ok:!1,items:[],error:"unknown token"};const o=(Array.isArray(s.items)?s.items:[]).filter(c=>!!(c&&(c.url||c.title)));return{ok:!!s.ok||i===200,items:o,error:typeof s.error=="string"?s.error:void 0}}async function Aw(t){const n=(t||"").trim().toLowerCase();if(!n)return{ok:!1,found:!1};try{const i=await(await fetch(`${we}/sourcing/run-status?fund=${encodeURIComponent(n)}`)).json().catch(()=>null);return i&&typeof i=="object"?i:{ok:!1,found:!1}}catch{return{ok:!1,found:!1}}}async function Sw(t){try{const r=await(await fetch(`${we}/cibles/fund-engines?token=${encodeURIComponent(t)}`)).json().catch(()=>null);return r&&r.ok&&Array.isArray(r.engines)?r.engines:[]}catch{return[]}}async function Ew(t,n,r){const{j:i}=await tt("fund-engine-toggle",{token:t,engine:n,enabled:r});return{ok:!!(i!=null&&i.ok),fund_on:i==null?void 0:i.fund_on,error:typeof(i==null?void 0:i.error)=="str
271ing"?i.error:void 0}}async function Nw(t,n){try{const i=await(await fetch(`${we}/sourcing/run-fund`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({fund_slug:n,bodacc_only:!0,token:t})})).json().catch(()=>({}));if(i&&(i.ok||i.status==="started"||i.status==="success"))return{ok:!0};const s=i&&(i.error||i.message||i.detail);return{ok:!1,error:typeof s=="string"?s:void 0}}catch{return{ok:!1}}}async function Cw(t){const{j:n}=await tt("avis-pattern",{token:t});return n&&n.ok?n:null}async function _w(t){const{j:n}=await tt("thesis-proposals",{token:t});if(!n||!n.ok)return null;const r=Array.isArray(n.proposals)?n.proposals:[];return{ok:!0,reason:typeof n.reason=="string"?n.reason:void 0,counts:n.counts&&typeof n.counts=="object"?n.counts:{},proposals:r.map(i=>{const s=i;return{section:String(s.section||""),title:String(s.title||""),why:String(s.why||""),evidence:Array.isArray(s.evidence)?s.evidence.map(String):[],instruction:String(s.instruction||"")}}).filter(i=>i.title&&i.instruction)}}async function Tw(t,n,r,i){const s={token:t,op:n};r.airtableId&&(s.airtable_id=r.airtableId),r.checkId&&(s.check_id=r.checkId),(i==null?void 0:i.text)!==void 0&&(s.text=i.text),i!=null&&i.entryId&&(s.entry_id=i.entryId);const{j:a}=await tt("notes",s),o=Array.isArray(a==null?void 0:a.entries)?a.entries:[];return{ok:!!(a!=null&&a.ok),entries:o.map(c=>{const l=c;return{id:String(l.id||""),date:String(l.date||""),text:String(l.text||"")}})}}async function qw(t){const{j:n}=await tt("autopush",{token:t});return n&&n.ok?n:null}async function Fw(t,n,r,i){const s={token:t,enabled:n};r&&(s.destination=r),i&&(s.campaign_id=i);const{j:a}=await tt("autopush",s);return a&&a.ok?a:null}async function Ow(t,n,r="webhook",i){const s={token:t,tab:n,destination:r,dry_run:!0};i&&(s.campaign_id=i);const{j:a}=await tt("bulk-push",s);return{ok:!!a.ok,eligible:typeof a.eligible=="number"?a.eligible:void 0,ready:typeof a.ready=="number"?a.ready:void 0,linkedinReady:typeof a.linkedin_ready=="number"?a.linkedin_ready:void 0,noContact:Array.isArray(a.no_contact)?a.no_contact:[]}}async function Mw(t,n,r="webhook",i,s){const a={token:t,tab:n,destination:r};i&&(a.campaign_id=i),s&&(a.idem_key=s);const{status:o,j:c}=await tt("bulk-push",a);if(!c.ok)return{ok:!1,error:String(c.error||(o?`HTTP ${o}`:"reseau"))};const l=d=>typeof c[d]=="number"?c[d]:void 0;return{ok:!0,replayed:c.replayed===!0,pending:c.pending===!0,pushed:l("pushed"),ready:l("ready"),eligible:l("eligible"),linkedinReady:l("linkedin_ready"),skippedNoEmail:l("skipped_no_email"),errors:Array.isArray(c.errors)?c.errors.map(String):[]}}async function Rw(t,n){const{j:r}=await tt("quick-analysis",{token:t,companies:n.slice(0,300)}),i=r.analyses||{},s={};return Object.entries(i).forEach(([a,o])=>{s[a]={ok:!!(o.blocs&&Object.keys(o.blocs).length),blocs:o.blocs,pages:o.pages,erreur:o.erreur,faitLe:o.fait_le}}),s}async function Pw(t,n,r){const{j:i}=await tt("quick-analysis",{token:t,company:n,website:r||""});return i.quota?{ok:!1,quota:!0}:{ok:!!i.ok&&!!(i.blocs&&Object.keys(i.blocs).length),blocs:i.blocs||{},pages:Array.isArray(i.pages)?i.pages:[],erreur:typeof i.erreur=="string"?i.erreur:"",faitLe:typeof i.fait_le=="string"?i.fait_le:void 0}}async function Iw(t,n={}){try{return await(await fetch(`${we}/cibles/webhook`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({token:t,...n})})).json().catch(()=>null)}catch{return null}}function Br(t,n){if(!t||t<=0)return"";const r=n==="fr"?"Mdâ¬":"bnâ¬";if(t>=1e9){const i=(t/1e9).toFixed(1).replace(/\.0$/,"");return(n==="fr"?i.replace(".",","):i)+" "+r}return t>=1e6?Math.round(t/1e6)+" Mâ¬":t>=1e3?Math.round(t/1e3)+" kâ¬":String(t)+" â¬"}function py(t){return t.toLowerCase().replace(/&/g,"and").replace(/[^a-z0-9]+/g,"-").replace(/^-|-$/g,"")}let Dh=!1;function uy(){var n;if(Dh||typeof window>"u"||(Dh=!0,(n=window.customElements)!=null&&n.get("pp-run-story"))||document.querySelector("script[data-pp-run-story]"))return;const t=document.createElement("script");t.src=In()?"/standard-tutorial/assets/run-story.js":`${we}/sourcing/run-story.js`,t.defer=!0,t.setAttribute("data-pp-run-story","1"),document.head.appendChild(t)}function Dw(t,n,r="",i="fr"){const s=new URLSearchParams({token:t,company:n,lang:i});return r&&s.set("memo_type",r),`${we}/cibles/memo-story?${s.toString()}`}function Ld({token:t,session:n,src:r,since:i,heading:s,eyebrow:a,empty:o,compact:c,flat:l,autoplay:d,waiting:p,replay:u=!0,collapsible:g,open:f,maxh:L,maxhNarrow:v,onDone:y,onState:h,style:b,className:x}){const A=m.useRef(null);m.useEffect(()=>{uy()},[]),m.useEffect(()=>{const E=A.current;if(!E||!y)return;const j=O=>y(O.detail);return E.addEventListener("pp-run-done",j),()=>E.removeEventListener("pp-run-done",j)},[y]),m.useEffect(()=>{const E=A.current;if(!E||!h)return;const j=O=>h(O.detail);
271return E.addEventListener("pp-run-state",j),()=>E.removeEventListener("pp-run-state",j)},[h]);let w=r||"";if(!w){const E=t?`token=${encodeURIComponent(t)}`:n?`session=${encodeURIComponent(n)}`:"";if(!E)return null;w=`${we}/sourcing/run-story?${E}${i?`&since=${Math.floor(i)}`:""}`}const S={ref:A,src:w,theme:"light",style:b,className:x};return s&&(S.heading=s),a&&(S.eyebrow=a),o&&(S.empty=o),c&&(S.compact=""),l&&(S.flat=""),d&&(S.autoplay=""),p&&(S.waiting=""),u||(S.replay="off"),g&&(S.collapsible=""),f&&(S.open=""),L!==void 0&&(S.maxh=String(L)),v!==void 0&&(S["maxh-narrow"]=String(v)),m.createElement("pp-run-story",S)}const hy="https://alexandre-79537--airtable-bridge-fastapi-app.modal.run",my="tblEgYhLpdBdcpKrw";async function gy(t){var c;const n=encodeURIComponent(`LOWER({email_lead})="${t.toLowerCase().trim()}"`),r=`${hy}/at/main/${my}?filterByFormula=${n}&fields%5B%5D=fund_type`,i=await fetch(r);if(!i.ok)throw new Error(`Airtable ${i.status}`);const s=await i.json(),a=new Set,o=[];for(const l of s.records||[]){const d=(((c=l.fields)==null?void 0:c.fund_type)||"").trim();d&&!a.has(d)&&(a.add(d),o.push(d))}return o.sort((l,d)=>l.localeCompare(d,"fr",{sensitivity:"base"})),o}const Fn=[{fr:"Identification",en:"Identification",steps:[{fr:"Résolution du domaine et de lâentité",en:"Resolving the domain and the legal entity",whyFr:"On part de votre URL et on remonte à la société réelle.",whyEn:"We start from the URL and trace it back to the real company.",w:12},{fr:"Cartographie du site : produit, équipe, tarifs",en:"Mapping the site: product, team, pricing",whyFr:"Les quatre pages qui disent presque tout dâune société.",whyEn:"The four pages that say almost everything about a company.",w:18},{fr:"Dirigeant identifié, appartenance vérifiée",en:"Leadership identified, affiliation verified",whyFr:"Un homonyme ne passe pas : on exige la preuve du lien avec la société.",whyEn:"No namesakes get through: we require proof of the tie to the company.",w:20}]},{fr:"Collecte",en:"Field work",steps:[{fr:"Lecture intégrale des pages clés",en:"Reading the key pages in full",whyFr:"Le site est lu en entier, pas survolé.",whyEn:"The site gets read end to end, not skimmed.",w:30},{fr:"Dossier exécutif du dirigeant",en:"Executive dossier on the founder",whyFr:"Parcours, mandats, ce quâil a déjà construit â et revendu.",whyEn:"Track record, mandates, what they already built â and sold.",w:25},{fr:"Levées de fonds et actualités récentes",en:"Funding rounds and recent news",whyFr:"Qui a mis de lâargent, quand, et à quelles conditions.",whyEn:"Who put money in, when, and on what terms.",w:20},{fr:"Historique de croissance externe",en:"External growth track record",whyFr:"Leurs acquisitions passées trahissent la prochaine.",whyEn:"Past acquisitions give away the next one.",w:20}]},{fr:"Analyse",en:"Analysis",steps:[{fr:"Proposition de valeur et cas dâusage",en:"Value proposition and use cases",whyFr:"Ce quâils vendent vraiment, et à qui.",whyEn:"What they actually sell, and to whom.",w:20},{fr:"Structure de marché et positionnement",en:"Market structure and positioning",whyFr:"Où ils se tiennent, et qui leur fait face.",whyEn:"Where they stand, and who stands against them.",w:25},{fr:"Forces, faiblesses, opportunités, menaces",en:"Strengths, weaknesses, opportunities, threats",whyFr:"Ce qui les protège, et ce qui les expose.",whyEn:"What protects them, and what leaves them exposed.",w:25},{fr:"Ce que vous savez faire, et ce qui vous manque",en:"What you do well, and what you lack",whyFr:"Vos angles morts deviennent des critères de recherche.",whyEn:"Your blind spots become search criteria.",w:25},{fr:"Tendance macro et fenêtre de tir",en:"Macro trend and window of opportunity",whyFr:"Pourquoi maintenant â et combien de temps ça reste vrai.",whyEn:"Why now â and how long that stays true.",w:20},{fr:"Carte mentale de la société",en:"Company mind map",whyFr:"Une page pour tout tenir en tête avant lâappel.",whyEn:"One page to hold it all in mind before the call.",w:25}]},{fr:"Votre stratégie",en:"Your strategy",steps:[{fr:"Ce quâune acquisition viendrait combler",en:"What an acquisition would fill in",whyFr:"On cherche ce qui vous manque, pas ce qui vous ressemble.",whyEn:"We look for what you lack, not for what looks like you.",w:25},{fr:"Ce quâune cible tirerait de vous",en:"What a target would gain from you",whyFr:"Vos équipes, vos contrats, votre réseau : ce que vous apportez.",whyEn:"Your teams, your contracts, your network: what you bring.",w:25},{fr:"Votre logique de synergies",en:"Your synergy logic",whyFr:"Pourquoi 1 + 1 ferait plus que 2, écrit noir sur blanc.",whyEn:"Why 1 + 1 would make more than 2, written down.",w:25},{fr:"Votre capacité et votre fenêtre",en:"Your capacity and your window",whyFr:"Quelle taille de cible vous est réellement accessible, et quand.",whyEn:"What size of target is actually within reach, and when.",w:20}]},{fr:"Vos angles",en:"Your angles",steps:[{fr:"Vos familles de cibles",en:"Your families of targets",whyFr:"Trois à six angles distincts. Toute la sélection en découlera.",whyEn:"Three to six distinct angles. The whole selection follows from them.",w:30},{fr:"Ce qui fera retenir une société",en:"What will get a company kept",whyFr:"Les signaux qui la font passer, angle par angle.",whyEn:"The signals that let it through, angle by angle.",w:25},{fr:"Ce qui la fera écarter",en:"What will get it ruled out",whyFr:"Ãcarter vaut mieux que retenir : câest là que se gagne le tri.",whyEn:"Ruling out beats keeping: that is where the sorting is won.",w:25},{fr:"Votre crible",en:"Your screen",whyFr:"Les clauses quâune société doit franchir pour arriver jusquâà vous.",whyEn:"The clauses a company must clear to reach you.",w:20},{fr:"Vos moteurs de recherche",en:"Your search engines",whyFr:"Vos angles deviennent des requêtes concrètes, lancées en continu.",whyEn:"Your angles become concrete queries, run continuously.",w:20}]},{fr:"Publication",en:"Publication",steps:[{fr:"Publication du mémo",en:"Publishing the memo",whyFr:"Votre mémo prend son adresse définitive.",whyEn:"Your memo takes its permanent address.",w:15},{fr:"Vos angles, prêts à être relus",en:"Your angles, ready for review",whyFr:"Ils sâaffichent ici même â vous les corrigez avant que la recherche ne parte.",whyEn:"They appear right here â you correct them before the search starts.",w:10}]}],Ht=Fn.flatMap((t,n)=>t.steps.map(r=>({...r,phase:n}))),fy=Fn[Fn.length-1].steps.length,Dx=Ht.length-fy,Ls=1080,xy=(()=>{const t=Ls/Ht.slice(0,Dx).reduce((r,i)=>r+i.w,0);let n=0;return Ht.map(r=>n+=r.w*t)})(),zo=Fn.map((t,n)=>{const r=Ht.findIndex(i=>i.phase===n);return{start:r,end:r+t.steps.length-1}}),zx={depart:0,recherche:1,site:1,dirigeant:2,lecture:3,parcours:4,actualites:6,produit:7,tarifs:7,marche:8,concurrents:8,macro:11,angles:17,redaction:20,sources:22,publication:23}
271,Ly={depart:"â¡",recherche:"ð",site:"ð",lecture:"ð",dirigeant:"ð¤",parcours:"ð¼",actualites:"ð°",produit:"ð¦",tarifs:"ð¶",marche:"ðºï¸",concurrents:"âï¸",macro:"ð",angles:"ð¯",redaction:"âï¸",sources:"ð§¾",publication:"â
"};function vy(t){const n=Math.max(0,Math.floor(t));return`${String(Math.floor(n/60)).padStart(2,"0")}:${String(n%60).padStart(2,"0")}`}const by={en:{titleLogin:"Log in to Proplace",titleSignup:"Create your account",closeLabel:"Close",emailLabel:"Your work email",emailPlaceholder:"[email protected]",loggingIn:"Checkingâ¦",continue:"Continue â",noAccount:"No account? Sign up â",haveAccount:"Already a client? Log in â",noAccountFound:"No account with this email â create one below.",connectionError:t=>`Connection error · ${t}`,pickTitle:"Which account do you want to open?",pickHint:(t,n)=>`${t} accounts are linked to ${n}.`,pickLabel:"Account",pickSubmit:"Open â",back:"â Another email",signupTitle:"Create your account",signupSub:"Give your website: Stan analyses your company and derives your acquisition angles. You review them before the search starts.",website:"Your company website",websitePh:"domain.com",websiteHint:"YOURS, not a targetâs: it is what Stan derives your criteria from.",company:"Company name (optional)",companyPh:"Acme SAS",create:"Create my account â",createFlow:"Generate my deal flow â",creating:"Creatingâ¦",theseTitle:"What we understood about you",theseWait:"Putting your strategy into wordsâ¦",theseWaitSub:"The analysis is done. We are writing up your acquisition angles â a few seconds.",theseIntro:"Everything that follows is derived from this. Read it: the selection is only as good as this is.",theseOk:"This is right â start the target search",step1:"Check what Stan understood",step2:"Correct what is off",step3:"Start the search",optional:"optional",afterLaunch:"Stan screens your market and hands you your kept targets within 30 to 60 minutes.",srcTitle:"Stan is sourcing your market",srcSub:"Watch the engines work. Your preview page opens as soon as it is ready â you can also close this window, nothing stops.",srcHeading:"Your sourcing, live",srcPublishing:"Targets found â your page is being publishedâ¦",srcOpen:"Open my preview page â",srcAccount:"Follow from my account",srcError:"This is taking longer than expected â our team is finishing your page. You can follow it from your account.",phoneNudge:"We need a number to hand you your targets â or book a meeting just below.",launching:"Startingâ¦",phoneLabel:"Your phone number",phonePh:"+33 6 12 34 56 78",phoneHint:"So we can hand you your targets and tune your angles by voice.",talkTitle:"Rather talk it through?",talkText:"Alexandre, your Corporate Developer, tunes Stan with you, live.",talkCall:"ð +33 6 83 10 72 86",talkMail:"âï¸ [email protected]",rdvBtn:"ð
Book a meeting",rdvDone:"â Meeting booked â your memo is unlocked.",memoLocked:"ð Full memo unlocked as soon as we can reach you: a valid number, or a booked meeting.",fixTitle:"Anything to correct?",fixChips:[{k:"hyp",label:"The hypothesis",seed:"Your hypothesis is off: in fact, "},{k:"profils",label:"The profiles",seed:"Add a target profile: "},{k:"crible",label:"The screen",seed:"In the screen: "},{k:"angles",label:"The angles",seed:"About the angles: "}],fixPh:"Write it as you would say it to your team â Stan recalibrates on it.",fixSubmit:"Update Stan with this correction â",fixSending:"Stan is recalibrating your thesisâ¦",fixApplied:"Correction applied â your thesis is up to date, on the left.",fixPhAnswer:"Answer Stan here â (a), (b), or your own words.",msgYou:"You",theseUpdated:"â Updated just now",verifyTitle:"Confirm your email",verifySub:t=>`We just sent a 6-digit code to ${t}. It expires in 10 minutes.`,verifyWhy:"Next we run a full analysis of your company and derive your acquisition angles. We check the address first, so we can actually hand you the result.",codeLabel:"6-digit code",verifySubmit:"Confirm and start â",verifying:"Checkingâ¦",resend:"I got nothing â resend the code",resendIn:t=>`Resend the code (${t}s)`,resendWait:t=>`The first code takes a few seconds â ${t}s to go.`,resendDone:"â New code sent. The previous one no longer works.",spamHint:"Still nothing? Check your spam folder: the subject line starts with the code itself.",spamHintFrom:t=>`Still nothing? Check your spam folder â the message comes from ${t}, and its subject line starts with the code itself.`,backToSignup:"â Change my email",progressTitle:"Your deal flow is being built",eta:"Allow 15 to 20 minutes, the time it takes to write your strategy. Your angles will appear on this screen, ready to be corrected before the search starts.",pastFacts:t=>`${t} fact${t>1?"s":""} established`,waitTitle:"Meanwhile",waitFacts:["Every morning, Stan will screen your market: each company kept or ruled out, with the reason written in plain words.","Your angles will become concrete queries, run continuously across your whole market.","You will c
271orrect Stan in plain language, any time. It recalibrates, and the next selection reflects it.","The first search takes 30 to 60 minutes. Your targets page then stays current, day after day.","Ruling out beats keeping: the value is not the list, it is the sorting."],stepCounter:(t,n)=>`Step ${t} of ${n}`,phaseSteps:t=>`${t} steps`,learnTitle:"What we just learned about you",staleHint:"The analysis is taking longer than expected â it keeps running in the background, this screen will catch up on its own.",deliverTitle:"What you get",delivers:["Your external growth strategy, written down","Your sourcing angles â your families of targets","What will get a company kept, and what will rule it out","The screen that decides kept / ruled out","The full memo on your company, and its sources"],done:"Your space is ready",doneSub:"Analysis complete. The memo is published and the email is on its way.",openAccount:"My account â",openFlow:"Open my deal flow â",error:"Something went wrong"},fr:{titleLogin:"Connexion à Proplace",titleSignup:"Créer votre compte",closeLabel:"Fermer",emailLabel:"Votre email professionnel",emailPlaceholder:"[email protected]",loggingIn:"Vérificationâ¦",continue:"Continuer â",noAccount:"Pas de compte ? Inscrivez-vous â",haveAccount:"Déjà client ? Se connecter â",noAccountFound:"Aucun compte avec cet email â créez-en un ci-dessous.",connectionError:t=>`Erreur de connexion · ${t}`,pickTitle:"Quel compte voulez-vous ouvrir ?",pickHint:(t,n)=>`${t} comptes sont rattachés à ${n}.`,pickLabel:"Compte",pickSubmit:"Ouvrir â",back:"â Un autre email",signupTitle:"Créons votre compte",signupSub:"Indiquez votre site : Stan analyse votre société et en déduit vos angles dâacquisition. Vous les relisez avant que la recherche ne démarre.",website:"Site web de votre entreprise",websitePh:"domaine.com",websiteHint:"Le VÃTRE, pas celui dâune cible : câest de lui que Stan déduit vos critères.",company:"Nom de lâentreprise (facultatif)",companyPh:"Acme SAS",create:"Créer mon compte â",createFlow:"Générer mon deal flow â",creating:"Créationâ¦",theseTitle:"Ce que nous avons compris de vous",theseWait:"Nous mettons votre stratégie au propreâ¦",theseWaitSub:"Lâanalyse est terminée. Nous rédigeons vos angles dâacquisition â quelques secondes.",theseIntro:"Tout ce qui suit en découle. Lisez-le : la sélection ne vaudra que ce que vaut ceci.",theseOk:"Câest juste â lancer la recherche de cibles",step1:"Vérifiez ce que Stan a compris",step2:"Corrigez ce qui est à côté",step3:"Lancez la recherche",optional:"facultatif",afterLaunch:"Stan passe votre marché au crible et vous remet vos cibles retenues sous 30 à 60 minutes.",srcTitle:"Stan source votre marché",srcSub:"Regardez les moteurs travailler. Votre page dâaperçu sâouvre dès quâelle est prête â vous pouvez aussi fermer cette fenêtre, rien ne sâarrête.",srcHeading:"Votre sourcing, en direct",srcPublishing:"Cibles trouvées â votre page se publieâ¦",srcOpen:"Ouvrir ma page dâaperçu â",srcAccount:"Suivre depuis mon compte",srcError:"Cela prend plus de temps que prévu â notre équipe finalise votre page. Vous pouvez suivre depuis votre compte.",phoneNudge:"Il nous faut un numéro pour vous remettre vos cibles â ou prenez rendez-vous juste en dessous.",launching:"Lancementâ¦",phoneLabel:"Votre téléphone",phonePh:"+33 6 12 34 56 78",phoneHint:"Pour vous remettre vos cibles et caler vos angles de vive voix.",talkTitle:"Vous préférez en parler ?",talkText:"Alexandre, votre Corporate Developer, règle Stan avec vous en direct.",talkCall:"ð +33 6 83 10 72 86",talkMail:"âï¸ [email protected]",rdvBtn:"ð
Prendre rendez-vous",rdvDone:"â Rendez-vous pris â votre mémo est débloqué.",memoLocked:"ð Mémo complet offert dès quâon peut vous joindre : numéro valide, ou rendez-vous pris.",fixTitle:"Quelque chose à corriger ?",fixChips:[{k:"hyp",label:"Lâhypothèse",seed:"Votre hypothèse est à côté : en réalité, "},{k:"profils",label:"Les profils",seed:"Ajoutez un profil de cibles : "},{k:"crible",label:"Le crible",seed:"Dans le crible : "},{k:"angles",label:"Les angles",seed:"Sur les angles : "}
271],fixPh:"Ãcrivez-le comme vous le diriez à votre équipe â Stan se recalibre dessus.",fixSubmit:"Mettre à jour Stan avec cette correction â",fixSending:"Stan recalibre votre thèseâ¦",fixApplied:"Correction appliquée â votre thèse est à jour, à gauche.",fixPhAnswer:"Répondez à Stan ici â (a), (b), ou vos mots.",msgYou:"Vous",theseUpdated:"â Mise à jour à lâinstant",verifyTitle:"Confirmez votre email",verifySub:t=>`Nous venons dâenvoyer un code à 6 chiffres à ${t}. Il expire dans 10 minutes.`,verifyWhy:"Ensuite, on analyse votre société en entier et on en déduit vos angles dâacquisition. On vérifie lâadresse dâabord, pour être sûrs de pouvoir vous remettre le résultat.",codeLabel:"Code à 6 chiffres",verifySubmit:"Confirmer et lancer â",verifying:"Vérificationâ¦",resend:"Je nâai rien reçu â renvoyer le code",resendIn:t=>`Renvoyer le code (${t} s)`,resendWait:t=>`Le premier code met quelques secondes â encore ${t} s.`,resendDone:"â Nouveau code envoyé. Le précédent ne marche plus.",spamHint:"Toujours rien ? Regardez vos indésirables : lâobjet du message commence par le code lui-même.",spamHintFrom:t=>`Toujours rien ? Regardez vos indésirables â le message vient de ${t}, et son objet commence par le code lui-même.`,backToSignup:"â Corriger mon email",progressTitle:"Votre deal flow se construit",eta:"Comptez 15 à 20 minutes, le temps dâécrire votre stratégie. Vos angles sâafficheront sur cet écran, prêts à être corrigés avant de lancer la recherche.",pastFacts:t=>`${t} fait${t>1?"s":""} établi${t>1?"s":""}`,waitTitle:"Pendant ce temps",waitFacts:["Chaque matin, Stan passera votre marché au crible : chaque société sera retenue ou écartée, avec la raison écrite en clair.","Vos angles deviendront des requêtes concrètes, relancées en continu sur lâensemble de votre marché.","Vous corrigerez Stan en langage naturel, à tout moment. Il se recalibre, et la sélection suivante en tient compte.","La première recherche prend 30 à 60 minutes. Votre page de cibles restera ensuite à jour, jour après jour.","Ãcarter vaut mieux que retenir : ce qui a de la valeur nâest pas la liste, câest le tri."],stepCounter:(t,n)=>`Ãtape ${t} sur ${n}`,phaseSteps:t=>`${t} étapes`,learnTitle:"Ce quâon vient dâapprendre sur vous",staleHint:"Lâanalyse prend plus de temps que prévu â elle continue en arrière-plan, cet écran se remettra à jour tout seul.",deliverTitle:"Ce que vous obtenez",delivers:["Votre stratégie de croissance externe, écrite","Vos angles de sourcing â vos familles de cibles","Ce qui fera retenir une société, et ce qui lâécartera","Le crible qui décidera retenu / écarté","Le mémo complet sur votre société, et ses sources"],done:"Votre espace est prêt",doneSub:"Analyse terminée. Le mémo est publié et lâemail part vers vous.",openAccount:"Mon compte â",openFlow:"Ouvrir mon deal flow â",error:"Une erreur est survenue"}};function yy({notes:t,cleared:n,lang:r,pastLabel:i}){const[s,a]=m.useState({}),o=(u,g)=>a(f=>({...f,[u]:!(f[u]??g)})),c=Math.max(0,Fn.findIndex((u,g)=>n<=zo[g].end)),l=new Map;for(const u of t){let g=Math.min(zx[u.kind]??n,Ht.length-1);Ht[g].phase>c&&(g=Math.min(n,Ht.length-1)),l.set(g,[...l.get(g)||[],u])}const d=t.length?t[t.length-1].i:-1,p=u=>{var y,h;const g=!!(u.detail||(y=u.links)!=null&&y.length),f=u.i===d,L=`n${u.i}`,v=g&&(s[L]??f);return e.jsxs("div",{className:`pp-auth-fact${f?" fresh":""}`,children:[e.jsxs("button",{type:"button",className:"pp-auth-fhead",disabled:!g,onClick:()=>o(L,f),children:[e.jsx("span",{className:"pp-auth-lico","aria-hidden":!0,children:Ly[u.kind]??"â¦"}),e.jsx("span",{className:"pp-auth-lfact",children:r==="fr"?u.fr:u.en||u.fr}),g&&e.jsx("span",{className:"pp-auth-lchev","aria-hidden":!0,children:v?"â¾":"â¸"})]}),v&&e.jsxs("div",{className:"pp-auth-lbody",children:[u.detail&&e.jsx("span",{className:"pp-auth-ldet",children:u.detail}),!!((h=u.links)!=null&&h.length)&&e.jsx("span",{className:"pp-auth-llinks",children:u.links.map(b=>e.jsx("a",{href:b.url,target:"_blank",rel:"noopener noreferrer",children:b.title||b.url},b.url))})]})]},u.i)};return e.jsxs("div",{className:"pp-auth-thread",children:[Fn.slice(0,c).map((u,g)=>{const f=Ht.reduce((y,h,b)=>h.phase===g?y.concat(l.get(b)||[]):y,[]);if(!f.length)return null;const L=`p${g}`,v=s[L]??!1;return e.jsxs("div",{className:"pp-auth-past",children:[e.jsxs("button",{type:"button",className:"pp-auth-fhead",onClick:()=>o(L,!1),children:[e.jsx("span",{className:"pp-auth-lico done","aria-hidden":!0,
271children:"â"}),e.jsx("span",{className:"pp-auth-lfact",children:r==="fr"?u.fr:u.en}),e.jsx("span",{className:"pp-auth-pcount",children:i(f.length)}),e.jsx("span",{className:"pp-auth-lchev","aria-hidden":!0,children:v?"â¾":"â¸"})]}),v&&e.jsx("div",{className:"pp-auth-facts",children:f.map(p)})]},L)}),e.jsx("ul",{className:"pp-auth-substeps pp-auth-solo",children:Fn[c].steps.map((u,g)=>{const f=zo[c].start+g,L=f<n?"done":f===n?"now":"todo",v=l.get(f)||[];return e.jsxs("li",{className:L,children:[e.jsx("span",{className:"pp-auth-dot","aria-hidden":!0}),e.jsx("span",{className:"pp-auth-slabel",children:r==="fr"?u.fr:u.en}),L==="now"&&e.jsx("span",{className:"pp-auth-why",children:r==="fr"?u.whyFr:u.whyEn}),!!v.length&&e.jsx("div",{className:"pp-auth-facts",children:v.map(p)})]},u.en)})})]})}function Ur({onClose:t,initialCompany:n="",initialWebsite:r="",initialExtras:i,intent:s="login",notice:a="",onAuthenticated:o,fundForLogin:c="",preferredLoginFund:l="",loginOnly:d=!1}){var Gp;const{lang:p}=ae(),u=by[p],[g,f]=m.useState(s==="signup"&&!d?"signup":"email"),L=d&&!["email","pick","verify"].includes(g)?"email":g,[v,y]=m.useState((s==="login"||d)&&((Gp=Ge())==null?void 0:Gp.email)||""),[h,b]=m.useState(r),[x,A]=m.useState(n),[w,S]=m.useState(i||Tr),[E,j]=m.useState(""),[O,k]=m.useState(""),[_,N]=m.useState(0),[I,ce]=m.useState(""),[K,pe]=m.useState(!1),ee=m.useRef(null),[P,D]=m.useState(""),[M,re]=m.useState(null),[H,se]=m.useState(0),[ie,he]=m.useState(""),[Le,xe]=m.useState(null),[oe,z]=m.useState([]),[Y,B]=m.useState(!1),[X,te]=m.useState(!1),[Ae,Ze]=m.useState(!1),[Ke,st]=m.useState(!1),Ct=m.useRef(null),[T,C]=m.useState([]),[q,G]=m.useState(!1),[F,J]=m.useState(""),R=m.useRef(null),Q=m.useRef(0),ge=m.useRef(0),[Se,mt]=m.useState(""),[_t,Dt]=m.useState(""),[yn,be]=m.useState(""),[ve,Je]=m.useState(!1),[me,Re]=m.useState(!1),[jn,Ue]=m.useState(""),[zi,wn]=m.useState(null),[yr,Ne]=m.useState(""),[He,yt]=m.useState(""),[Jt,$t]=m.useState(4),[jt,dn]=m.useState(0),[Bi,zp]=m.useState(0),[ga,Bp]=m.useState(""),Hn=m.useRef(null),Kr=m.useRef(null),Yn=m.useRef(null),xl=m.useRef(null),Up=m.useRef(0);m.useEffect(()=>{const U=fe=>{fe.key==="Escape"&&!me&&L!=="running"&&t()};window.addEventListener("keydown",U);const $=document.body.style.overflow;return document.body.style.overflow="hidden",()=>{window.removeEventListener("keydown",U),document.body.style.overflow=$}},[t,me,L]),m.useEffect(()=>{const U=R.current;U&&(U.scrollTop=U.scrollHeight)},[T.length,ve]),m.useEffect(()=>()=>{Kr.current&&window.clearInterval(Kr.current),Hn.current&&window.clearInterval(Hn.current),Yn.current&&window.clearInterval(Yn.current),xl.current&&window.clearInterval(xl.current),ee.current&&window.clearInterval(ee.current)},[]);function Vp(U,$,fe=""){const ke=$.trim().toLowerCase();if(ur({email:ke,fund_type:U,ts:Date.now(),...fe?{member_session:fe}:{}}),fe&&o){o();return}if(rn(U)){window.location.href=lo(p);return}fetch(`${_e}/inbound/credits`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:ke})}).then(Fe=>Fe.json()).then(Fe=>{window.location.href=Ir(U,{open:kp(Fe==null?void 0:Fe.plan)})}).catch(()=>{window.location.href=Ir(U,{open:!1})})}async function Ll(U){const $=await Jl({email:v.trim(),lang:p,website_hp:E});he(U),k(""),ce($.sender||""),vl(),f("verify"),Re(!1)}async function C1(U){if(U.preventDefault(),!(!v.trim()||me||E)){Ue(""),Re(!0);try{const $=await gy(v);if(c){const ke=$e=>$e.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,""),Fe=$.find($e=>ke($e)===ke(c));if(!Fe)throw new Error(p==="fr"?"Ce cockpit nâest pas rattaché à cet email. Utilisez lâadresse de son titulaire.":"This cockpit is not linked to this email. Use its ownerâs address.");await Ll(Fe);return}if($.length===0){if(d)throw new Error(p==="fr"?"Aucun fonds nâest rattaché à cet email. Utilisez lâadresse de votre compte Proplace.":"No fund is linked to this email. Use your Proplace account address.");f("signup"),Re(!1);return}if($.length===1){await Ll($[0]);return}wn($);const fe=ke=>ke.trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,"");Ne($.find(ke=>fe(ke)===fe(l))||$[0]),f("pick"),Re(!1)}catch($){Ue(u.connectionError($ instanceof Error?$.message:String($))),Re(!1)}}}async function _1(U){if(U.preventDefault(),!(!yr||me||E)){Re(!0),Ue("");try{await Ll(yr)}catch($){Ue($ instanceof Error?$.message:String($)),Re(!1)}}}const Jr=(()=>{const $=h.trim().replace(/^https?:\/\//i,"").replace(/^www\./i,"").split(/[/?#]/)[0].split(".")[0]||"";return $?$.charAt(0).toUpperCase()+$.slice(1):""})();function T1(){Up.current=Date.now(),$t(4),dn(0),zp(0),Hn.current&&window.clearInterval(Hn.current),Hn.current=window.setInterval(()=>
271{const U=(Date.now()-Up.current)/1e3;zp(U),$t(U<=Ls?4+86*(U/Ls):90+2*(1-Math.exp(-(U-Ls)/Ls)));let $=0;for(;$<Dx&&U>=xy[$];)$++;dn(Math.max(ge.current,Math.min($,ge.current+2)))},500)}async function q1(U){if(U.preventDefault(),!(d||!v.trim()||me||E)){Re(!0),Ue("");try{let $=h.trim();$&&!/^https?:\/\//i.test($)&&($="https://"+$);const fe=x.trim()||Jr;if($){const Fe=await Jl({email:v.trim(),lang:p,website_hp:E});he(""),k(""),ce(Fe.sender||""),vl(),f("verify"),Re(!1);return}const ke=await T2({email:v.trim(),company_name:fe||void 0,lang:p,website_hp:E});if(!ke.ok||!ke.fund_type)throw new Error(ke.error||ke.detail||"Signup failed");Vp(ke.fund_type,ke.email||v)}catch($){Ue($ instanceof Error?$.message:String($)),f(L==="running"?"error":"signup"),Re(!1)}}}async function F1(U){U.preventDefault();const $=_t.trim();if(!(!$||ve)&&!(!T.some(fe=>fe.who==="stan")&&$.length<6)){Je(!0),Ue(""),be(""),C(fe=>[...fe,{who:"you",text:$}]),Dt("");try{const fe=await xx(P,$);if(!fe.job_id){be(fe.reply||""),fe.reply&&C(Ie=>[...Ie,{who:"stan",text:fe.reply}]),Je(!1);return}const ke=fe.job_id,Fe=async()=>{const Ie=await Sp(ke);if(!Ie.done)return!1;const $r=Ie.clarification||Ie.reply||"";return be($r),$r&&C(Ui=>[...Ui,{who:"stan",text:$r}]),Ie.applied&&(C(Ui=>[...Ui,{who:"done",text:u.fixApplied}]),xe(null),G(!0),Hp(P,!0)),Je(!1),!0},$e=window.setInterval(async()=>{try{await Fe()&&window.clearInterval($e)}catch{}},6e3);xl.current=$e}catch(fe){Ue(fe instanceof Error?fe.message:String(fe)),Je(!1)}}}async function O1(){if(!(d||!P||me)){Re(!0),Ue("");try{await fx(P,p,Se),F&&v.trim()&&ur({email:v.trim().toLowerCase(),fund_type:F,ts:Date.now(),member_session:P}),se(Date.now()/1e3),f("sourcing"),Re(!1)}catch(U){Ue(U instanceof Error?U.message:String(U)),Re(!1)}}}m.useEffect(()=>{if(L!=="sourcing")return;const U=v.trim().toLowerCase();if(!U)return;let $=!0,fe;async function ke(){try{const $e=await(await fetch(`${_e}/inbound/onboard-status`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:U})})).json();if(!$)return;if(re($e),$e&&$e.status==="done"&&$e.page_url){fe=setTimeout(()=>{window.location.href=$e.page_url},4e3);return}if($e&&$e.status==="error")return}catch{}$&&(fe=setTimeout(ke,1e4))}return ke(),()=>{$=!1,clearTimeout(fe)}},[L,v]);function Hp(U,$=!1){Yn.current&&window.clearInterval(Yn.current);let fe=0;const ke=async()=>{try{const Fe=await gx(U,$||fe>0);if(Fe.state==="ready"&&Fe.criteria){if(!Fe.criteria.lead&&fe<6){fe+=1;return}Yn.current&&window.clearInterval(Yn.current),Yn.current=null,xe(Fe.criteria),Fe.fund_slug&&J(Fe.fund_slug)}}catch{}};ke(),Yn.current=window.setInterval(()=>void ke(),6e3)}async function M1(U){if(U.preventDefault(),!(d&&!ie||O.trim().length!==6||me)){Re(!0),Ue("");try{const $=await Cs({email:v.trim(),code:O.trim(),...ie?{fund_type:ie}:{}}),{session:fe}=$;if(ie){if(!fe||!$.fund_type)throw new Error("Verified login unavailable");Vp($.fund_type,$.email||v,fe);return}let ke=h.trim();ke&&!/^https?:\/\//i.test(ke)&&(ke="https://"+ke);const Fe=x.trim()||Jr,$e=Ep(w),Ie=await _2({company_name:Fe||Jr||ke,website:ke,email:v.trim(),lang:p,self_signup:!0,session:fe,pitch_deck_url:$e.pitch_deck_url||void 0,linkedin:$e.linkedin||void 0});if(!Ie.ok||!Ie.job_id)throw new Error(Ie.error||Ie.detail||"Launch failed");yt(Ie.fund_type||""),Bp(Ie.memo_url||""),D(Ie.session||""),Ie.email&&Ie.fund_type&&ur({email:Ie.email,fund_type:Ie.fund_type,ts:Date.now(),member_session:Ie.session||fe}),f("running"),T1();const $r=Ie.job_id,Ui=()=>{Kr.current&&window.clearInterval(Kr.current),Hn.current&&window.clearInterval(Hn.current),Kr.current=null,Hn.current=null},yl={on:!1},D1=async()=>{var Wp,Qp,Zp,Kp,Jp;if(!yl.on){yl.on=!0;try{const Vi=await z2($r,Q.current);if(B(!!Vi.stale),(Wp=Vi.notes)!=null&&Wp.length){Q.current=Math.max(Q.current,Vi.seq),z(Yi=>{const z1=new Set(Yi.map(jl=>jl.i)),Xp=Vi.notes.filter(jl=>!z1.has(jl.i));return Xp.length?[...Yi,...Xp].slice(-24):Yi});const $p=Math.max(...Vi.notes.map(Yi=>zx[Yi.kind]??0));ge.current=Math.max(ge.current,$p)}const Hi=await B2($r);Hi.done&&(Ui(),((Qp=Hi.result)==null?void 0:Qp.status)==="ok"||!!((Zp=Hi.result)!=null&&Zp.url)?(Bp(((Kp=Hi.result)==null?void 0:Kp.url)||Ie.memo_url||""),$t(100),dn(Ht.length),Ie.session?(f("these"),Hp(Ie.session)):f("done")):(Ue(((Jp=Hi.result)==null?void 0:Jp.error)||u.error),f("error")))}catch{}finally{yl.on=!1}}};Kr.current=window.setInterval(()=>void D1(),8e3),Re(!1)}catch($){Ue($ instanceof Error?$.message:String($)),Re(!1)}}}function vl(){ee.current&&window.clearInterval(ee.current),N(0),pe(!1);const U=Date.now();ee.current=window.setInterval(()=>{N(Math.floor((Date.now()-U)/1e3))},1e3)}async function R1(){if(!(me||_<30)){Re(!0),Ue("");try{const U=await Jl({email:v.trim(),lang:p,website_hp:E});k(""),ce(U.sender||I),vl(),pe(!0)}catch(U){Ue(U instanceof Error?U.message:String(U))}Re(!1)}}const Yp=(Se.match(/\d/g)||[]).length>=8,fa=L==="done"?Ht.length:jt,xa=h.trim().replace(/^https?:\/\//i,"").replace(/^www\./i,"").split(/[/?#]/)[0],bl=x.trim()||Jr||xa,P1=L==="pick"?u.pickTitle:L==="these"?u.theseTitle:L==="sourcing"?u.srcTitle:L==="verify"?u.verifyTitle:L==="signup"?u.signupTitle:L==="running"?u.progressTitle:L==="done"?u.done:u.titleLogin,I1=e.jsxs(e.Fragment,{children:[e.jsx("style",{children:jy}),e.jsx("div",{className:"pp-auth-overlay",onClick:!me&&L!=="running"?t:void 0,children:e.jsxs("div",{className:`pp-auth-modal${L==="running"||L==="done"||L==="these"||L==="sourcing"?" wide":""}${L==="running"?" flow":""}${L==="these"&&Le?" tflow":""}`,onClick:U=>U.stopPropagation(),role:"dialog","aria-modal":"true",children:[e.jsxs("div",{className:"pp-auth-head",children:[e.jsx("span",{className:"pp-auth-title",children:P1}),(L==="email"||L==="pick"||L==="signup"||L==="verify"||L==="these"||L==="sourcing"||L==="done"||L==="error")&&e.jsx("button",{type:"button",className:"pp-auth-close",onClick:t,disabled:me,"aria-label":u.closeLabel,children:"â"})]}),!!a&&e.jsx("p",{className:"pp-auth-hint",role:"status",children:a}),L==="email"&&e.jsxs(e.Fragment,{children:[e.jsxs("form",{onSubmit:C1,className:"pp-auth-form",children:[e.jsx("input",{type:"text",name:"website_hp",value:E,onChange:U=>j(U.target.value),tabIndex:-1,autoComplete:"off",className:"pp-auth-hp","aria-hidden":!0}),e.jsx("input",{type:"email",required:!0,autoFocus:!0,placeholder:u.emailPlaceholder,value:v,onCh
271ange:U=>y(U.target.value),disabled:me,className:"pp-auth-input",autoComplete:"email"}),e.jsx("button",{type:"submit",disabled:me||!v.trim(),className:"pp-auth-submit",children:me?u.loggingIn:u.continue})]}),!d&&e.jsx("button",{type:"button",className:"pp-auth-link",disabled:me,onClick:()=>{f("signup"),Ue(""),wn(null)},children:u.noAccount})]}),L==="pick"&&zi&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"pp-auth-hint",children:u.pickHint(zi.length,v.trim().toLowerCase())}),e.jsxs("form",{onSubmit:_1,className:"pp-auth-form",children:[e.jsx("select",{autoFocus:!0,"aria-label":u.pickLabel,value:yr,onChange:U=>Ne(U.target.value),className:"pp-auth-input",children:zi.map(U=>e.jsx("option",{value:U,children:U},U))}),e.jsx("button",{type:"submit",disabled:!yr,className:"pp-auth-submit",children:u.pickSubmit})]}),e.jsx("button",{type:"button",className:"pp-auth-link",onClick:()=>{f("email"),wn(null),Ne("")},children:u.back})]}),L==="signup"&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"pp-auth-hint",children:u.signupSub}),e.jsxs("form",{onSubmit:q1,className:"pp-auth-form",children:[e.jsx("input",{type:"text",name:"website_hp",value:E,onChange:U=>j(U.target.value),tabIndex:-1,autoComplete:"off",className:"pp-auth-hp","aria-hidden":!0}),e.jsxs("label",{className:"pp-auth-lbl",children:[u.emailLabel,e.jsx("input",{type:"email",required:!0,autoFocus:!v.trim(),placeholder:u.emailPlaceholder,value:v,onChange:U=>y(U.target.value),disabled:me,className:"pp-auth-input",autoComplete:"email"})]}),e.jsxs("label",{className:"pp-auth-lbl",children:[u.website,e.jsx("input",{required:!0,value:h,onChange:U=>b(U.target.value),placeholder:u.websitePh,disabled:me,className:"pp-auth-input",autoComplete:"url",autoFocus:!!v.trim()}),e.jsx("span",{className:"pp-auth-fieldhint",children:u.websiteHint})]}),e.jsxs("label",{className:"pp-auth-lbl",children:[u.company,e.jsx("input",{value:x,onChange:U=>A(U.target.value),placeholder:Jr||u.companyPh,disabled:me,className:"pp-auth-input",autoComplete:"organization"})]}),e.jsx(Np,{lang:p,variant:"form",value:w,onChange:S}),e.jsx("button",{type:"submit",disabled:me||!v.trim()||!h.trim(),className:"pp-auth-submit",children:me?u.creating:u.createFlow})]}),e.jsx("button",{type:"button",className:"pp-auth-link",disabled:me,onClick:()=>{f("email"),Ue("")},children:u.haveAccount})]}),L==="these"&&e.jsx("div",{className:"pp-auth-these",children:Le?e.jsxs("div",{className:"pp-auth-cols pp-auth-tcols",children:[e.jsxs("div",{children:[e.jsxs("p",{className:"pp-auth-stepn",children:[e.jsx("b",{children:"1"}),u.step1]}),e.jsx("p",{className:"pp-auth-hint",children:u.theseIntro}),q&&e.jsx("p",{className:"pp-auth-updated",children:u.theseUpdated}),e.jsx("div",{className:`pp-auth-thebox${q?" updated":""}`,children:e.jsx(ll,{criteria:Le,lang:p})}),ga&&(Yp||Ae)?e.jsx("a",{className:"pp-auth-link pp-auth-memook",href:ga,target:"_blank",rel:"noopener noreferrer",children:p==="fr"?"Ouvrir le mémo complet de votre société â":"Open your companyâs full memo â"}):e.jsx("p",{className:"pp-auth-memolock",children:u.memoLocked})]}),e.jsxs("div",{children:[e.jsxs("form",{className:"pp-auth-fix",onSubmit:F1,children:[e.jsxs("p",{className:"pp-auth-stepn",children:[e.jsx("b",{children:"2"}),u.step2,e.jsx("em",{children:u.optional})]}),e.jsx("div",{className:"pp-auth-chips",children:u.fixChips.map(U=>e.jsx("button",{type:"button",className:"pp-auth-chip",disabled:ve,onClick:()=>Dt($=>{const fe=$.trim(),ke=u.fixChips.map(Fe=>Fe.seed.trim());return!fe||ke.includes(fe)?U.seed:$.replace(/\s*$/,` 272`)+U.seed}),children:U.label},U.k))}),!!T.length&&e.jsxs("div",{className:"pp-auth-talklog",ref:R,children:[T.map((U,$)=>e.jsxs("p",{className:`pp-auth-msg ${U.who}`,children:[e.jsx("span",{className:"pp-auth-mwho",children:U.who==="you"?u.msgYou:U.who==="done"?"â":"Stan"}),U.text]},`${$}-${U.text.slice(0,12)}`)),ve&&e.jsxs("p",{className:"pp-auth-msg stan pending",children:[e.jsx("span",{className:"pp-auth-mwho",children:"Stan"}),e.jsxs("span",{className:"pp-auth-dots",children:[e.jsx("i",{}),e.jsx("i",{}),e.jsx("i",{})]}),u.fixSending]})]}),e.jsx("textarea",{className:"pp-auth-input pp-auth-ta",rows:2,maxLength:12e3,placeholder:T.some(U=>U.who==="stan")?u.fixPhAnswer:u.fixPh,value:_t,onChange:U=>Dt(U.target.value),disabled:ve}),e.jsx("button",{type:"submit",className:"pp-auth-link",disabled:ve||!_t.trim(),children:ve?u.fixSending:u.fixSubmit})]}),e.jsxs("div",{className:"pp-auth-done pp-auth-go",children:[e.jsxs("p",{className:"pp-auth-stepn",children:[e.jsx("b",{children:"3"}),u.step3]}),e.jsxs("label",{className:"pp-auth-lbl",children:[u.phoneLabel,e.jsx("input",{ref:Ct,type:"tel",inputMode:"tel",autoComplete:"tel",placeholder:u.phonePh,value:Se,onChange:U=>{mt(U.target.value),st(!1)},disabled:me,className:`pp-auth-input${Ke?" nudge":""}`}),e.jsx("span",{className:"pp-auth-fieldhint",children:u.phoneHint})]}),e.jsx("button",{type:"button",className:"pp-auth-submit pp-auth-big",disabled:me||ve,onClick:()=>{var U;if(!Yp){st(!0),(U=Ct.current)==null||U.focus();return}O1()},children:me?u.launching:u.theseOk}),e.jsx("p",{className:`pp-auth-after${Ke?" warn":""}`,children:Ke?u.phoneNudge:u.afterLaunch}),e.jsxs("div",{className:"pp-auth-talk",children:[e.jsxs("p",{className:"pp-auth-talktxt",children:[e.jsx("b",{children:u.talkTitle})," ",u.talkText]}),e.jsxs("div",{className:"pp-auth-talkrow",children:[e.jsx("a",{className:"pp-auth-talkbtn",href:"tel:+33683107286",children:u.talkCall}),e.jsx("a",{className:"pp-auth-talkbtn",href:"mailto:[email protected]",children:u.talkMail}),e.jsx("button",{type:"button",className:"pp-auth-talkbtn rdv",onClick:()=>te(!0),children:u.rdvBtn})]}),Ae&&e.jsx("p",{className:"pp-auth-ok",children:u.rdvDone})]})]})]})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"pp-auth-gbar",role:"progressbar","aria-valuenow":100,children:e.jsx("span",{className:"pp-auth-gfill live",style:{width:"100%"}})}),e.jsx("p",{className:"pp-auth-thewait",children:u.theseWait}),e.jsx("p",{className:"pp-auth-hint",children:u.theseWaitSub})]})}),L==="sourcing"&&e.jsxs("div",{className:"pp-auth-src",children:[e.jsx("p",{className:"pp-auth-hint",children:u.srcSub}),e.jsx(Ld,{session:P,compact:!0,waiting:!0,replay:!1,maxh:280,since:H||void 0,heading:u.srcHeading,empty:p==="en"?"Stan is reading your thesis â the engines start in a moment.":"Stan relit votre thèse â les moteurs démarrent dans un instant.",style:{display:"block",margin:"10px 0 12px"}}),(M==null?void 0:M.status)==="error"?e.jsx("p",{className:"pp-auth-hint",children:u.srcError}):(M==null?void 0:M.status)==="done"&&M.page_url?e.jsx("a",{className:"pp-auth-submit",href:M.page_url,children:u.srcOpen}):(M==null?void 0:M.step)==="publication"?e.jsx("p",{className:"pp-auth-hint",children:u.srcPublishing}):null,e.jsx("a",{className:"pp-auth-link",href:lo(p),children:u.srcAccount})]}),L==="verify"&&e.jsxs(e.Fragment,{children:[e.jsx("p",{className:"pp-auth-hint",children:u.verifySub(v.trim().toLowerCase())}),e.jsxs("form",{onSubmit:M1,className:"pp-auth-form",children:[e.jsxs("label",{className:"pp-auth-lbl",children:[u.codeLabel,e.jsx("input",{autoFocus:!0,inputMode:"numeric",autoComplete:"one-time-code",maxLength:6,placeholder:"000000",value:O,onChange:U=>k(U.target.value.replace(/\D/g,"").slice(0,6)),disabled:me,className:"pp-auth-input pp-auth-code"})]}),e.jsx("button",{type:"submit",disabled:me||O.length!==6,className:"pp-auth-submit",children:me?u.verifying:ie?p==="fr"?"Confirmer et ouvr
272ir mon cockpit â":"Confirm and open my cockpit â":u.verifySubmit})]}),K&&e.jsx("p",{className:"pp-auth-ok",children:u.resendDone}),_>=45&&e.jsx("p",{className:"pp-auth-spam",children:I?u.spamHintFrom(I):u.spamHint}),e.jsx("p",{className:"pp-auth-verifywhy",children:ie?p==="fr"?"Cette vérification autorise les analyses avec vos crédits. Aucun mémo nâest lancé et aucun crédit nâest consommé à la connexion.":"This verification authorizes analyses using your credits. Signing in does not launch a memo or use any credit.":u.verifyWhy}),e.jsx("button",{type:"button",className:"pp-auth-link",disabled:me||_<30,onClick:R1,title:_<30?u.resendWait(30-_):"",children:_<30?u.resendIn(30-_):u.resend}),e.jsx("button",{type:"button",className:"pp-auth-link",disabled:me,onClick:()=>{f(ie?"email":"signup"),he(""),Ue(""),k("")},children:u.backToSignup})]}),(L==="running"||L==="done")&&e.jsxs("div",{className:"pp-auth-progress",children:[bl&&e.jsxs("p",{className:"pp-auth-subject",children:[bl,xa&&xa.toLowerCase()!==bl.toLowerCase()&&e.jsxs("span",{className:"pp-auth-host",children:[" · ",xa]})]}),e.jsx("div",{className:"pp-auth-gbar",role:"progressbar","aria-valuenow":Math.round(Jt),children:e.jsx("span",{className:`pp-auth-gfill${L==="running"?" live":""}`,style:{width:`${Math.max(Jt,4)}%`}})}),e.jsxs("div",{className:"pp-auth-meter",children:[e.jsxs("span",{className:"pp-auth-pct",children:[Math.round(Jt),"%"]}),e.jsx("span",{className:"pp-auth-count",children:u.stepCounter(Math.min(fa+(L==="done"?0:1),Ht.length),Ht.length)}),e.jsx("span",{className:"pp-auth-clock",children:vy(Bi)})]}),L==="running"&&e.jsx("p",{className:"pp-auth-eta",children:u.eta}),e.jsx("ol",{className:"pp-auth-rail",children:Fn.map((U,$)=>{const{end:fe}=zo[$],ke=fa>fe?"done":Fn[$].steps.some((Fe,$e)=>zo[$].start+$e===fa)?"now":"todo";return e.jsxs("li",{className:`pp-auth-rseg ${ke}`,title:`${$+1}. ${p==="fr"?U.fr:U.en}`,children:[e.jsx("span",{className:"pp-auth-rbar","aria-hidden":!0}),e.jsx("span",{className:"pp-auth-rname",children:p==="fr"?U.fr:U.en})]},U.en)})}),e.jsx(yy,{notes:oe,cleared:fa,lang:p,pastLabel:u.pastFacts}),L==="running"&&e.jsxs("div",{className:"pp-auth-wait",children:[e.jsx("p",{className:"pp-auth-dtitle",children:u.waitTitle}),e.jsx("p",{className:"pp-auth-waittxt",children:u.waitFacts[Math.floor(Bi/14)%u.waitFacts.length]})]},Math.floor(Bi/14)),L==="running"&&Y&&e.jsx("p",{className:"pp-auth-spam",children:u.staleHint}),L==="done"&&e.jsxs("div",{className:"pp-auth-done",children:[e.jsx("p",{className:"pp-auth-hint",children:u.doneSub}),He&&!rn(He)&&e.jsx("a",{className:"pp-auth-submit",href:Tn(He),children:u.openFlow}),e.jsx("a",{className:"pp-auth-link",href:lo(p),children:u.openAccount}),ga&&e.jsx("a",{className:"pp-auth-link",href:ga,target:"_blank",rel:"noopener noreferrer",children:p==="fr"?"Ouvrir le mémo â":"Open memo â"})]})]}),L==="error"&&e.jsxs("div",{className:"pp-auth-errbox",children:[e.jsx("p",{className:"pp-auth-error",children:jn||u.error}),e.jsx("button",{type:"button",className:"pp-auth-submit",onClick:()=>{f("signup"),Ue("")},children:"â"})]}),jn&&(L==="email"||L==="signup"||L==="pick"||L==="verify"||L==="these")&&e.jsx("div",{className:"pp-auth-error",children:jn}),X&&e.jsx(Pi,{subject:x.trim()||Jr||void 0,onClose:()=>te(!1),onBooked:()=>{Ze(!0),te(!1)}})]})})]});return typeof document<"u"?Vn.createPortal(I1,document.body):null}const jy=` 273.pp-auth-overlay { 274 position: fixed; inset: 0; 275 background: rgba(11, 25, 41, 0.55); 276 z-index: 120; 277 display: flex; align-items: center; justify-content: center; 278 padding: 20px; 279} 280.pp-auth-modal { 281 background: #fff; 282 width: 100%; max-width: 440px; 283 max-height: min(92vh, 820px); 284 overflow: auto; 285 padding: 28px 24px 22px; 286 border-radius: 6px; 287 box-shadow: 0 20px 60px rgba(11, 25, 41, 0.25); 288 font-family: var(--pp-body); 289} 290/* Large sur grand écran : le déroulé et les faits vivent CÃTE à CÃTE, donc plus 291 aucun défilement interne. Sur téléphone la carte reste pleine largeur et les 292 deux blocs s'empilent â rien à sacrifier là -bas. */ 293.pp-auth-modal.wide { max-width: 880px; } 294/* PENDANT L'ANALYSE, LA CARTE NE DÃFILE JAMAIS. Elle devient une colonne 295 souple : tout ce qui l'entoure garde sa taille, et SEUL le fil absorbe la 296 place restante. Plus de hauteur devinée en vh â la mesure s'adapte d'elle-même 297 à n'importe quel écran, et le fil ne défile que s'il n'y a vraiment plus de 298 place. */ 299.pp-auth-modal.flow { display: flex; flex-direction: column; overflow: hidden; } 300.pp-auth-modal.flow .pp-auth-progress { 301 display: flex; flex-direction: column; min-height: 0; flex: 1 1 auto; 302} 303.pp-auth-modal.flow .pp-auth-thread { max-height: none; flex: 1 1 auto; min-height: 0; } 304/* MÃME PRINCIPE SUR L'ÃCRAN DE LA THÃSE. Deux zones élastiques â la lecture à 305 gauche, le journal à droite â et tout le reste garde sa taille. Conséquence 306 voulue : le bouton « lancer la recherche » reste TOUJOURS visible, sur 307 n'importe quelle hauteur d'écran, sans que la carte défile jamais. */ 308@media (min-width: 680px) { 309 /* Le plafond de 820 px bornait TOUT : sur un grand écran, le journal se 310 retrouvait à 33 px alors que la place existait. */ 311 .pp-auth-modal.tflow { 312 display: flex; flex-direction: column; overflow: hidden; 313 max-height: min(94vh, 940px); 314 } 315 .pp-auth-modal.tflow .pp-auth-these { flex: 1 1 auto; min-height: 0; display: flex; } 316 /* align-items:start (hérité de .pp-auth-cols) dimensionnait les colonnes 317 sur leur contenu : rien ne pouvait rétrécir, et la carte débordait. */
318 .pp-auth-modal.tflow .pp-auth-tcols { 319 flex: 1 1 auto; min-height: 0; width: 100%; 320 align-items: stretch; grid-template-rows: minmax(0, 1fr); 321 } 322 .pp-auth-modal.tflow .pp-auth-tcols > div { display: flex; flex-direction: column; min-height: 0; } 323 .pp-auth-modal.tflow .pp-auth-thebox { flex: 1 1 auto; min-height: 0; max-height: none; } 324 .pp-auth-modal.tflow .pp-auth-fix { 325 display: flex; flex-direction: column; min-height: 0; overflow: hidden; 326 } 327 /* Un min-height non nul faisait DÃBORDER le journal par-dessus le bloc de 328 lancement sur un écran court (mesuré à 760 px). Il prend ce qui reste, 329 point â et défile chez lui quand il reste peu. */ 330 .pp-auth-modal.tflow .pp-auth-talklog { flex: 1 1 auto; min-height: 0; max-height: none; } 331 /* Ãcran court : plutôt que d'écraser la conversation à zéro, on retire les 332 deux lignes qui se répètent ailleurs. Le journal garde de quoi montrer le 333 dernier échange, et le bouton reste visible. */ 334 @media (max-height: 820px) { 335 .pp-auth-modal.tflow .pp-auth-after, 336 .pp-auth-modal.tflow .pp-auth-memolock { display: none; } 337 .pp-auth-modal.tflow .pp-auth-talklog { min-height: 72px; } 338 } 339} 340.pp-auth-cols { display: grid; grid-template-columns: 1fr; gap: 2px 20px; align-items: start; } 341@media (min-width: 680px) { 342 .pp-auth-cols { grid-template-columns: 11fr 9fr; } 343 /* Ãcran de la thèse : la lecture à gauche (plus large), l'action à droite. */ 344 .pp-auth-tcols { grid-template-columns: 6fr 5fr; } 345 .pp-auth-tcols .pp-auth-thebox { max-height: 64vh; } 346} 347.pp-auth-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 16px; } 348.pp-auth-title { font-size: 17px; font-weight: 600; color: #0F1D33; } 349.pp-auth-close { background: none; border: none; font-size: 16px; color: #4B5E78; cursor: pointer; padding: 4px 8px; } 350.pp-auth-close:hover { color: #0F1D33; } 351.pp-auth-close:disabled { opacity: .4; cursor: not-allowed; } 352.pp-auth-hint { margin: -4px 0 14px; font-size: 13px; line-height: 1.5; color: #4B5E78; } 353.pp-auth-form { display: flex; flex-direction: column; gap: 10px; margin-bottom: 10px; } 354.pp-auth-lbl { display: flex; flex-direction: column; gap: 5px; font-size: 12.5px; font-weight: 600; color: #0F1D33; } 355.pp-auth-fieldhint { font-size: 11.5px; font-weight: 400; color: #7a8694; line-height: 1.4; } 356select.pp-auth-input { background: #fff; cursor: pointer; appearance: auto; } 357.pp-auth-input { 358 font-family: inherit; font-size: 14px; font-weight: 400; 359 padding: 11px 14px; border: 1px solid #E3E8F0; border-radius: 7px; 360 color: #0F1D33; outline: none; width: 100%; box-sizing: border-box; 361} 362.pp-auth-input:focus { border-color: #12A150; outline: 2px solid rgba(18,161,80,.25); } 363.pp-auth-submit { 364 display: inline-flex; align-items: center; justify-content: center; 365 font-family: inherit; font-size: 14px; font-weight: 700; 366 padding: 12px 16px; border: none; border-radius: 8px; 367 background: #0E7F3F; color: #fff; cursor: pointer; text-decoration: none; 368} 369.pp-auth-submit:hover:not(:disabled) { opacity: .92; color: #fff; } 370.pp-auth-submit:disabled { opacity: .5; cursor: not-allowed; } 371.pp-auth-link { 372 display: block; width: 100%; text-align: center; 373 font-family: inherit; font-size: 13px; font-weight: 500; 374 background: none; border: none; color: #0E7F3F; 375 padding: 8px 0; cursor: pointer; text-decoration: none; 376} 377.pp-auth-link:hover { text-decoration: underline; } 378.pp-auth-error { 379 margin-top: 12px; padding: 10px 12px; border-radius: 8px; 380 background: #FDECEC; color: #C0353A; font-size: 13px; line-height: 1.45; 381} 382.pp-auth-hp { position: absolute; left: -9999px; opacity: 0; height: 0; width: 0; } 383.pp-auth-thebox { 384 max-height: min(430px, 48vh); overflow-y: auto; 385 margin: 4px 0 14px; padding-right: 4px; 386 scrollbar-width: thin; scrollbar-color: #C9D6E6 transparent; 387 /* Ombre de défilement : sans elle la zone coupe net sur un mot et le lecteur 388 croit la thèse finie. Les deux caches sont en "local" (ils suivent le 389 contenu), les deux ombres en "scroll" (elles restent collées au cadre) â 390 l'ombre du bas disparaît donc VRAIMENT quand on atteint la fin, au lieu 391 d'estomper en permanence la dernière ligne comme le ferait un masque. */ 392 background: 393 linear-gradient(#fff, rgba(255, 255, 255, 0)) 0 0 / 100% 18px no-repeat local, 394 linear-gradient(rgba(255, 255, 255, 0), #fff) 0 100% / 100% 18px no-repeat local, 395 radial-gradient(farthest-side at 50% 0, rgba(15, 31, 51, .13), transparent) 396 0 0 / 100% 11px no-repeat scroll, 397 radial-gradient(farthest-side at 50% 100%, rgba(15, 31, 51, .13), transparent) 398 0 100% / 100% 11px no-repeat scroll; 399} 400.pp-auth-thebox::-webkit-scrollbar { width: 6px; } 401.pp-auth-thebox::-webkit-scrollbar-thumb { background: #C9D6E6; border-radius: 999px; } 402.pp-auth-fix { 403 margin: 0 0 4px; padding: 12px 14px; 404 background: #fbfcfe; border: 1px solid #e4ebf3; border-radius: 8px; 405} 406.pp-auth-fixq { margin: 0 0 8px; font-size: 13px; font-weight: 600; color: #0F1D33; } 407.pp-auth-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 9px; } 408.pp-auth-chip { 409 font-family: inherit; font-size: 12px; font-weight: 500; 410 padding: 5px 10px; border-radius: 999px; cursor: pointer; 411 background: #fff; border: 1px solid #E3E8F0; color: #16233A; 412} 413.pp-auth-chip:hover:not(:disabled) { border-color: #12A150; color: #0E7F3F; } 414.pp-auth-chip:disabled { opacity: .5;
414 cursor: not-allowed; } 415.pp-auth-ta { font-family: inherit; line-height: 1.5; resize: vertical; min-height: 62px; } 416.pp-auth-reply { 417 margin: 9px 0 0; padding: 9px 11px; border-radius: 8px; 418 background: #F9FBFD; border: 1px solid #dcece2; 419 font-size: 12.5px; line-height: 1.5; color: #0E7F3F; 420} 421.pp-auth-thewait { margin: 14px 0 6px; font-size: 15px; font-weight: 600; color: #0F1D33; } 422.pp-auth-ok { 423 margin: 8px 0 0; padding: 8px 11px; border-radius: 8px; 424 background: #F9FBFD; border: 1px solid #dcece2; 425 font-size: 12.5px; line-height: 1.45; color: #0E7F3F; 426} 427.pp-auth-spam { 428 margin: 8px 0 0; padding: 9px 11px; border-radius: 8px; 429 background: #fffbeb; border: 1px solid #f3e2b8; 430 font-size: 12.5px; line-height: 1.5; color: #7a5b12; 431} 432.pp-auth-code { 433 font-size: 26px; font-weight: 700; text-align: center; 434 letter-spacing: .34em; text-indent: .34em; 435 font-variant-numeric: tabular-nums; padding: 13px 14px; 436} 437.pp-auth-why { 438 margin: 2px 0 6px; padding: 10px 12px; 439 background: #F9FBFD; border: 1px solid #dcece2; border-radius: 8px; 440 font-size: 12.5px; line-height: 1.5; color: #16233A; 441} 442.pp-auth-progress { margin-top: 4px; } 443.pp-auth-gbar { 444 position: relative; height: 14px; border-radius: 999px; 445 background: #eef2f6; border: 1px solid #C9D6E6; overflow: hidden; 446} 447.pp-auth-gfill { 448 display: block; height: 100%; border-radius: 999px; 449 background: linear-gradient(90deg, #12A150, #12A150); 450 transition: width .6s ease; 451} 452.pp-auth-gfill.live { 453 background-size: 200% 100%; 454 animation: ppAuthShimmer 1.4s linear infinite; 455} 456@keyframes ppAuthShimmer { 457 0% { background-position: 100% 0; } 458 100% { background-position: -100% 0; } 459} 460.pp-auth-subject { 461 margin: -2px 0 12px; font-size: 15px; font-weight: 700; color: #0F1D33; 462 overflow-wrap: anywhere; 463} 464.pp-auth-host { font-weight: 500; color: #7a8694; } 465.pp-auth-meter { 466 display: flex; align-items: baseline; justify-content: space-between; 467 gap: 10px; margin: 9px 0 14px; 468} 469.pp-auth-pct { font-size: 22px; font-weight: 700; color: #0F1D33; line-height: 1; } 470.pp-auth-count { flex: 1; text-align: center; font-size: 12px; font-weight: 600; color: #4B5E78; } 471.pp-auth-clock { 472 font-size: 12px; font-weight: 600; color: #7a8694; 473 font-variant-numeric: tabular-nums; 474} 475 476/* RAIL des 6 phases sur UNE ligne. L'accordéon d'origine coûtait ~400 px et 477 imposait un défilement interne ; ici tout tient sans scroll, y compris sur 478 téléphone où les libellés passent sous les segments. */ 479.pp-auth-rail { 480 list-style: none; display: flex; gap: 5px; margin: 0 0 12px; padding: 0; 481} 482.pp-auth-rseg { flex: 1; min-width: 0; } 483.pp-auth-rbar { 484 display: block; height: 4px; border-radius: 999px; background: #e4ebf3; 485 transition: background .4s ease; 486} 487.pp-auth-rname { 488 display: block; margin-top: 5px; font-size: 10.5px; line-height: 1.25; 489 color: #9aa5b1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; 490} 491.pp-auth-rseg.done .pp-auth-rbar { background: #12A150; } 492.pp-auth-rseg.done .pp-auth-rname { color: #12A150; } 493.pp-auth-rseg.now .pp-auth-rbar { 494 background: linear-gradient(90deg, #12A150, #12A150); 495 background-size: 200% 100%; animation: ppAuthShimmer 1.4s linear infinite; 496} 497.pp-auth-rseg.now .pp-auth-rname { color: #0F1D33; font-weight: 700; } 498/* Les étapes de la seule phase en cours : pas de cadre, pas de défilement. */ 499.pp-auth-solo { margin-left: 2px; } 500.pp-auth-phase { border-top: 1px solid #eef2f6; } 501.pp-auth-phase:first-child { border-top: none; } 502.pp-auth-phead { display: flex; align-items: center; gap: 9px; padding: 9px 0; } 503.pp-auth-pmark { 504 flex: none; width: 19px; height: 19px; border-radius: 999px; 505 display: inline-flex; align-items: center; justify-content: center; 506 font-size: 10.5px; font-weight: 700; 507 background: #eef2f6; color: #9aa5b1; border: 1px solid #dde5ee; 508} 509.pp-auth-pname { font-size: 13.5px; font-weight: 600; color: #9aa5b1; } 510.pp-auth-pmeta { margin-left: auto; font-size: 11.5px; color: #b3bcc6; } 511.pp-auth-phase.done .pp-auth-pmark { background: #12A150; border-color: #12A150; color: #fff; } 512.pp-auth-phase.done .pp-auth-pname { color: #12A150; } 513.pp-auth-phase.now .pp-auth-pmark { background: #0F1D33; border-color: #0F1D33; color: #fff; } 514.pp-auth-phase.now .pp-auth-pname { color: #0F1D33; font-weight: 700; } 515 516.pp-auth-substeps { 517 list-style: none; margin: 0 0 10px; padding: 0 0 0 5px; 518 border-left: 2px solid #e4ebf3; margin-left: 9px; 519} 520.pp-auth-substeps li { 521 position: relative; padding: 5px 0 5px 20px; 522 font-size: 13px; line-height: 1.4; color: #b3bcc6; 523} 524.pp-auth-dot { 525 position: absolute; left: -1px; top: 10px; 526 width: 7px; height: 7px; border-radius: 999px; 527 background: #fff; border: 2px solid #dde5ee; box-sizing: border-box; 528} 529.pp-auth-substeps li.done { color: #4B5E78; } 530.pp-auth-substeps li.done .pp-auth-dot { background: #12A150; border-color: #12A150; } 531.pp-auth-substeps li.now { color: #0F1D33; font-weight: 600; } 532.pp-auth-substeps li.now .pp-auth-dot { 533 background: #12A150; border-color: #12A150;
534 box-shadow: 0 0 0 0 rgba(18,161,80, .55); 535 animation: ppAuthPulse 1.6s ease-out infinite; 536} 537@keyframes ppAuthPulse { 538 70% { box-shadow: 0 0 0 7px rgba(18,161,80, 0); } 539 100% { box-shadow: 0 0 0 0 rgba(18,161,80, 0); } 540} 541.pp-auth-slabel { display: block; } 542.pp-auth-why { 543 display: block; margin-top: 2px; 544 font-size: 12px; font-weight: 400; font-style: italic; color: #4B5E78; 545} 546 547.pp-auth-eta { 548 margin: -4px 0 12px; font-size: 12.5px; line-height: 1.5; color: #4B5E78; 549 font-style: italic; 550} 551/* LE FIL. Il ne défile pas : les faits sont repliés, et seul le déploiement 552 volontaire de plusieurs d'entre eux peut faire défiler CETTE zone â jamais 553 le popup. Rien ne peut déborder en largeur (anywhere + hidden) : une URL 554 sans espace faisait apparaître une barre horizontale. */ 555.pp-auth-thread { 556 max-height: 52vh; overflow-y: auto; overflow-x: hidden; 557 overscroll-behavior: contain; 558 scrollbar-width: thin; scrollbar-color: #C9D6E6 transparent; 559} 560@media (max-width: 680px) { .pp-auth-thread { max-height: 42vh; } } 561.pp-auth-past { margin: 0 0 6px 9px; padding-left: 5px; } 562.pp-auth-pcount { 563 flex: none; font-size: 11.5px; color: #9aa5b1; font-weight: 500; 564} 565.pp-auth-past .pp-auth-lfact { color: #12A150; } 566.pp-auth-past .pp-auth-lico.done { 567 background: #eef7f1; border-color: #cfe8da; color: #12A150; 568 font-size: 12px; font-weight: 700; width: 22px; height: 22px; 569} 570/* Les faits d'une étape, en retrait sous elle. AUCUNE MARGE NÃGATIVE : elle 571 élargit l'élément lui-même et rouvrait 7 px de barre horizontale (mesuré). 572 Le surlignage du fait vivant tient donc dans son propre rembourrage, que 573 tous les faits partagent pour rester alignés. */ 574.pp-auth-facts { 575 display: flex; flex-direction: column; gap: 4px; 576 margin: 6px 0 2px; min-width: 0; 577} 578.pp-auth-fact { 579 animation: ppAuthFactIn .45s ease both; min-width: 0; 580 padding: 4px 7px; border-radius: 8px; 581} 582.pp-auth-fact.fresh { background: #f0f9f3; box-shadow: inset 2px 0 0 #12A150; } 583/* La tête d'un fait ne s'étire PAS sur toute la largeur : sur une carte de 584 880 px, un chevron seul à l'autre bout de l'écran paraît détaché de son 585 titre. Nom, compte et chevron restent groupés. */ 586.pp-auth-fhead { 587 display: flex; gap: 9px; align-items: center; width: auto; max-width: 100%; 588 min-width: 0; font-family: inherit; text-align: left; background: none; 589 border: 0; padding: 0; margin: 0; cursor: pointer; color: inherit; 590} 591.pp-auth-fhead:disabled { cursor: default; } 592.pp-auth-lchev { margin-left: 2px; flex: none; font-size: 11px; color: #9aa5b1; } 593@keyframes ppAuthFactIn { from { opacity: 0; transform: translateY(-4px); } } 594.pp-auth-lico { 595 flex: none; width: 26px; height: 26px; border-radius: 8px; 596 display: inline-flex; align-items: center; justify-content: center; 597 font-size: 13px; background: #fff; border: 1px solid #e0e8f2; 598} 599.pp-auth-lbody { display: block; min-width: 0; padding: 3px 0 2px 35px; } 600.pp-auth-lfact { 601 min-width: 0; font-size: 13px; font-weight: 600; color: #0F1D33; line-height: 1.4; 602 overflow-wrap: anywhere; 603} 604.pp-auth-ldet { 605 display: block; margin-top: 2px; font-size: 12px; line-height: 1.45; color: #4B5E78; 606 overflow-wrap: anywhere; 607} 608.pp-auth-llinks a { overflow-wrap: anywhere; } 609/* Le « pourquoi » du code de vérification : il lui faut de l'air. */ 610.pp-auth-verifywhy { 611 margin: 18px 0 4px; font-size: 12.5px; line-height: 1.55; color: #4B5E78; 612} 613/* La carte « Pendant ce temps » : une phrase qui tourne, l'attente instruit. */ 614.pp-auth-wait { 615 margin-top: 10px; padding: 10px 13px; 616 background: #F9FBFD; border: 1px solid #dcece2; border-radius: 10px; 617 animation: ppAuthFactIn .6s ease both; 618} 619.pp-auth-waittxt { margin: 0; font-size: 12.5px; line-height: 1.55; color: #16233A; } 620/* LES TROIS TEMPS. Sans eux, l'écran est un mur : le dirigeant ne sait pas ce 621 qu'on attend de lui ni où est la porte de sortie. */ 622.pp-auth-stepn { 623 display: flex; align-items: center; gap: 8px; margin: 0 0 8px; 624 font-size: 13.5px; font-weight: 700; color: #0F1D33; 625} 626.pp-auth-stepn b { 627 flex: none; width: 21px; height: 21px; border-radius: 999px; 628 display: inline-flex; align-items: center; justify-content: center; 629 background: #0F1D33; color: #fff; font-size: 11.5px; font-weight: 700; 630} 631.pp-auth-stepn em { 632 font-style: normal; font-size: 11px; font-weight: 600; color: #7a8694; 633 background: #eef2f6; border-radius: 999px; padding: 2px 8px; 634} 635/* LE JOURNAL DE LA CORRECTION. Un clic doit toujours laisser une trace : sans 636 ça, l'écran paraît figé et le dirigeant reclique dans le vide. */ 637.pp-auth-talklog { 638 display: flex; flex-direction: column; gap: 6px; margin: 8px 0 9px; 639 /* Une conversation défile CHEZ ELLE. Sans ce plafond, elle poussait la carte
640 entière au défilement (293 px mesurés) â ce qu'on s'interdit. */ 641 max-height: 148px; overflow-y: auto; overflow-x: hidden; 642 scrollbar-width: thin; scrollbar-color: #C9D6E6 transparent; 643} 644.pp-auth-msg { 645 margin: 0; padding: 8px 10px; border-radius: 9px; 646 font-size: 12.5px; line-height: 1.5; overflow-wrap: anywhere; 647 animation: ppAuthFactIn .35s ease both; 648} 649.pp-auth-mwho { 650 display: block; font-size:12px; font-weight:600; margin-bottom: 3px; 651} 652.pp-auth-msg.you { background: #eef2f6; color: #0F1D33; } 653.pp-auth-msg.you .pp-auth-mwho { color: #7a8694; } 654.pp-auth-msg.stan { background: #F9FBFD; border: 1px solid #dcece2; color: #16233A; } 655.pp-auth-msg.stan .pp-auth-mwho { color: #0E7F3F; } 656.pp-auth-msg.done { 657 background: #f0f9f3; color: #0E7F3F; font-weight: 600; 658 box-shadow: inset 2px 0 0 #12A150; 659} 660.pp-auth-msg.done .pp-auth-mwho { display: none; } 661.pp-auth-dots { display: inline-flex; gap: 3px; margin-right: 6px; vertical-align: middle; } 662.pp-auth-dots i { 663 width: 4px; height: 4px; border-radius: 999px; background: #12A150; 664 animation: ppAuthDot 1.1s ease-in-out infinite; 665} 666.pp-auth-dots i:nth-child(2) { animation-delay: .18s; } 667.pp-auth-dots i:nth-child(3) { animation-delay: .36s; } 668@keyframes ppAuthDot { 0%, 100% { opacity: .25; } 50% { opacity: 1; } } 669/* La thèse vient de changer : on le voit, sinon la correction reste une 670 promesse invérifiable. */ 671.pp-auth-updated { 672 margin: -6px 0 8px; font-size: 12px; font-weight: 700; color: #0E7F3F; 673 animation: ppAuthFactIn .4s ease both; 674} 675.pp-auth-thebox.updated { box-shadow: 0 0 0 2px rgba(18,161,80,.45); } 676/* Le bloc du lancement se détache : c'est là que tout se joue. */ 677.pp-auth-go { 678 margin-top: 12px; padding: 13px; border-radius: 10px; 679 background: #F9FBFD; border: 1px solid #cfe8da; 680} 681.pp-auth-go .pp-auth-stepn b { background: #0E7F3F; } 682.pp-auth-submit.pp-auth-big { 683 font-size: 15px; font-weight: 700; padding: 15px 18px; margin-top: 4px; 684} 685.pp-auth-after { 686 margin: 8px 0 0; font-size: 11.5px; line-height: 1.5; color: #4B5E78; text-align: center; 687} 688.pp-auth-after.warn { color: #b3401f; font-weight: 600; } 689.pp-auth-input.nudge { border-color: #e07a54; box-shadow: 0 0 0 3px rgba(224,122,84,.14); } 690/* Le bloc « en parler » : l'alternative humaine, aussi nette que le bouton. */ 691.pp-auth-talk { 692 margin: 12px 0 6px; padding: 11px 13px; 693 background: #fbfcfe; border: 1px solid #e4ebf3; border-radius: 10px; 694} 695.pp-auth-talktxt { margin: 0 0 8px; font-size: 12.5px; line-height: 1.5; color: #16233A; } 696.pp-auth-talktxt b { color: #0E7F3F; } 697.pp-auth-talkrow { display: flex; flex-wrap: wrap; gap: 7px; } 698.pp-auth-talkbtn { 699 font-family: inherit; font-size: 12.5px; font-weight: 600; cursor: pointer; 700 padding: 7px 11px; border-radius: 8px; text-decoration: none; 701 background: #fff; border: 1px solid #E3E8F0; color: #0F1D33; 702} 703.pp-auth-talkbtn:hover { border-color: #12A150; color: #0E7F3F; } 704.pp-auth-talkbtn.rdv { background: #0E7F3F; border-color: #0E7F3F; color: #fff; } 705.pp-auth-talkbtn.rdv:hover { opacity: .92; color: #fff; } 706.pp-auth-memook { flex: none; margin-top: 8px; } 707.pp-auth-memolock { 708 flex: none; 709 margin: 8px 0 0; padding: 9px 11px; border-radius: 8px; 710 background: #f7f9fc; border: 1px dashed #c9d4e2; 711 font-size: 12px; line-height: 1.5; color: #4B5E78; 712} 713.pp-auth-llinks { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 3px; } 714.pp-auth-llinks a { 715 font-size: 11.5px; color: #0E7F3F; text-decoration: none; 716 max-width: 210px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; 717} 718.pp-auth-llinks a:hover { text-decoration: underline; } 719@media (prefers-reduced-motion: reduce) { .pp-auth-learn li { animation: none; } } 720.pp-auth-deliver { 721 margin: 14px 0 12px; padding: 12px 14px; 722 background: #F9FBFD; border: 1px solid #dcece2; border-radius: 8px; 723} 724.pp-auth-dtitle { 725 margin: 0 0 7px; font-size:12px; font-weight:600; color: #0E7F3F; 726} 727.pp-auth-deliver ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; } 728.pp-auth-deliver li { position: relative; padding-left: 16px; font-size: 12.5px; line-height: 1.45; color: #16233A; } 729.pp-auth-deliver li::before { content: 'â'; position: absolute; left: 0; color: #12A150; font-weight: 700; } 730 731.pp-auth-done { display: flex; flex-direction: column; gap: 10px; margin-top: 16px; } 732@media (max-width: 480px) { 733 .pp-auth-modal { padding: 22px 18px 18px; } 734 .pp-auth-phases { max-height: 34vh; } 735 .pp-auth-deliver { margin: 12px 0 10px; padding: 10px 12px; } 736} 737@media (prefers-reduced-motion: reduce) { 738 .pp-auth-gfill.live, .pp-auth-substeps li.now .pp-auth-dot { animation: none; } 739} 740.pp-auth-errbox { display: flex; flex-direction: column; gap: 12px; } 741`;function Qr({onClose:t,initialCompany:n="",initialWebsite:r="",initialExtras:i}){return e.jsx(Ur,{onClose:t,initialCompany:n,initialWebsite:r,initialExtras:i,intent:"signup"})}function ea({variant:t="light"}){const{lang:n,switchLang:r}=ae();
741return e.jsxs("span",{className:`pp-lang pp-lang-${t}`,role:"group","aria-label":"Language / Langue",children:[e.jsx("style",{children:wy}),e.jsx("button",{type:"button",className:n==="en"?"on":"","aria-pressed":n==="en",onClick:()=>r("en"),children:"EN"}),e.jsx("button",{type:"button",className:n==="fr"?"on":"","aria-pressed":n==="fr",onClick:()=>r("fr"),children:"FR"})]})}const wy=` 742.pp-lang{display:inline-flex;align-items:center;border-radius:22px;overflow:hidden; 743flex:0 0 auto;white-space:nowrap} 744.pp-lang button{font:inherit;font-size:12px;font-weight:600;letter-spacing:.02em; 745padding:5px 10px;background:none;border:none;cursor:pointer;line-height:1;transition:.15s} 746.pp-lang-light{border:1px solid #d9d9d3;background:#fff} 747.pp-lang-light button{color:#888} 748.pp-lang-light button:hover{color:#16233A} 749.pp-lang-light button.on{background:#0F1D33;color:#fff} 750.pp-lang-dark{border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06)} 751.pp-lang-dark button{color:#9fb0c4} 752.pp-lang-dark button:hover{color:#fff} 753.pp-lang-dark button.on{background:#12A150;color:#06281a} 754`,ky={en:{connected:"Connected",settings:"Settings",logOut:"Log out"},fr:{connected:"Connecté",settings:"Paramètres",logOut:"Se déconnecter"}};function wi({fundType:t,variant:n="dropdown",className:r="",dealflowHref:i=""}){const{lang:s}=ae(),a=ky[s],o=hx(t),c=S2(t,s),l=lo(s),[d,p]=m.useState(()=>i||Tn(t));m.useEffect(()=>{var E;if(i){p(i);return}p(Tn(t));const w=(E=Ge())==null?void 0:E.email;if(!w)return;let S=!0;return fetch(`${_e}/inbound/credits`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:w})}).then(j=>j.json()).then(j=>{S&&p(kp(j==null?void 0:j.plan)?pa(t):Tn(t))}).catch(()=>{S&&p(Tn(t))}),()=>{S=!1}},[t,i]);const u=()=>{ux(),Sb(),f(!1),window.location.reload()},[g,f]=m.useState(!1),[L,v]=m.useState({top:0,left:0}),y=m.useRef(null),h=m.useRef(null),b=m.useRef(null),x=()=>{var k;const w=h.current;if(!w)return;const S=w.getBoundingClientRect(),E=((k=b.current)==null?void 0:k.offsetWidth)||200;let j=Math.min(S.right-E,window.innerWidth-E-8);j<8&&(j=8);const O=Math.min(S.bottom+8,window.innerHeight-180);v({top:Math.max(8,O),left:j})},A=()=>{if(g){f(!1);return}x(),f(!0)};return m.useEffect(()=>{if(!g)return;const w=requestAnimationFrame(()=>{requestAnimationFrame(x)}),S=k=>{var N,I;const _=k.target;(N=y.current)!=null&&N.contains(_)||(I=b.current)!=null&&I.contains(_)||f(!1)},E=k=>{k.key==="Escape"&&f(!1)},j=()=>f(!1),O=k=>{var N;const _=k.target;if((_==null?void 0:_.nodeType)===1&&((N=_.closest)!=null&&N.call(_,".pph, .pp-nav"))){x();return}f(!1)};return document.addEventListener("mousedown",S),document.addEventListener("keydown",E),window.addEventListener("resize",j),window.addEventListener("scroll",O,!0),()=>{cancelAnimationFrame(w),document.removeEventListener("mousedown",S),document.removeEventListener("keydown",E),window.removeEventListener("resize",j),window.removeEventListener("scroll",O,!0)}},[g]),n==="inline"?e.jsxs("span",{className:`pp-acct-inline ${r}`.trim(),children:[e.jsx("a",{href:d,children:c}),e.jsx("a",{href:l,children:a.settings}),e.jsx("button",{type:"button",className:"pp-acct-logout",onClick:u,children:a.logOut})]}):e.jsxs("div",{className:`pp-acct ${r}`.trim(),ref:y,children:[e.jsx("style",{children:zh}),e.jsxs("button",{ref:h,type:"button",className:"pp-nav-link pp-nav-cta pp-acct-btn","aria-haspopup":"true","aria-expanded":g,"aria-label":o||a.connected,onClick:A,children:[e.jsx("span",{className:"pp-acct-who",children:o||a.connected}),e.jsx("span",{className:`pp-acct-caret${g?" is-open":""}`,"aria-hidden":!0,children:"â¾"})]}),g&&Vn.createPortal(e.jsxs(e.Fragment,{children:[e.jsx("style",{children:zh}),e.jsxs("div",{ref:b,className:"pp-acct-menu",role:"menu",style:{top:L.top,left:L.left},children:[e.jsx("a",{role:"menuitem",href:d,onClick:()=>f(!1),children:c}),e.jsx("a",{role:"menuitem",href:l,onClick:()=>f(!1),children:a.settings}),e.jsx("div",{className:"pp-acct-sep",role:"separator"}),e.jsx("button",{type:"button",role:"menuitem",className:"pp-acct-logout",onClick:u,children:a.logOut})]})]}),document.body)]})}const zh=` 755.pp-acct { position: relative; display: inline-flex; align-items: center; flex: 0 0 auto; white-space: nowrap; } 756.pp-acct-btn { display: inline-flex; align-items: center; gap: 5px; flex: 0 0 auto; white-space: nowrap; max-width: min(220px, 46vw); }
757.pp-acct-who { overflow: hidden; text-overflow: ellipsis; min-width: 0; } 758.pp-acct-caret { font-size: 10px; line-height: 1; transition: transform .18s ease; } 759.pp-acct-caret.is-open { transform: rotate(180deg); } 760.pp-acct-menu { 761 position: fixed; 762 min-width: 200px; 763 background: #fff; 764 border: 1px solid #E3E8F0; 765 border-radius: 12px; 766 box-shadow: 0 16px 48px rgba(11, 25, 41, 0.14); 767 padding: 6px; 768 z-index: 10000; 769 display: flex; 770 flex-direction: column; 771} 772.pp-acct-menu a, 773.pp-acct-menu button { 774 display: block; 775 width: 100%; 776 text-align: left; 777 padding: 10px 14px; 778 border-radius: 8px; 779 font-family: var(--pp-body); 780 font-size: 13.5px; 781 font-weight: 550; 782 color: #0F1D33; 783 text-decoration: none; 784 white-space: nowrap; 785 background: none; 786 border: none; 787 cursor: pointer; 788} 789.pp-acct-menu a:hover, 790.pp-acct-menu button:hover { background: #eef9f2; color: #0E7F3F; } 791.pp-acct-sep { 792 height: 1px; background: #E3E8F0; margin: 4px 8px; 793} 794.pp-acct-menu .pp-acct-logout { color: #C0353A; font-weight: 600; } 795.pp-acct-menu .pp-acct-logout:hover { background: #FDECEC; color: #991b1b; } 796.pp-acct-inline { display: flex; flex-direction: column; gap: 8px; } 797.pp-acct-inline a, .pp-acct-inline button { 798 font: inherit; text-align: left; background: none; border: none; 799 color: inherit; cursor: pointer; padding: 0; text-decoration: none; 800} 801.pp-acct-inline .pp-acct-logout { color: #C0353A; } 802`,Ay={en:{items:[{id:"why",label:"Why Stan"},{id:"how",label:"How it works"},{id:"architecture",label:"Architecture"},{id:"founder",label:"Team"},{id:"security",label:"Security"},{id:"pricing",label:"Pricing"}],logIn:"Log in",sections:[{href:"/actualites/",label:"Live"},{href:"/actualites/operations/secteurs/",label:"Sector watch"}]},fr:{items:[{id:"why",label:"Pourquoi Stan"},{id:"how",label:"Comment ça marche"},{id:"architecture",label:"Architecture"},{id:"founder",label:"Ãquipe"},{id:"security",label:"Sécurité"},{id:"pricing",label:"Tarifs"}],logIn:"Se connecter",sections:[{href:"/actualites/",label:"Live"},{href:"/actualites/operations/secteurs/",label:"Veille sectorielle"}]}};function zn({minimal:t=!1,items:n}){const{lang:r,localizePath:i}=ae(),s=i("/"),a=typeof window<"u"&&(window.location.pathname===s||window.location.pathname===`${s}/`.replace("//","/"))?"#top":s,o=Ay[r],[c,l]=m.useState(!1),[d,p]=m.useState(!1),u=Ge();m.useEffect(()=>{typeof window>"u"||window.location.hash==="#login"&&!u&&(l(!0),history.replaceState(null,"",window.location.pathname+window.location.search))},[u]);const g=()=>{l(!0)};return m.useEffect(()=>{const f=document.querySelector(".pp-nav"),L=()=>{const y=Math.round((f==null?void 0:f.getBoundingClientRect().height)||60);document.documentElement.style.setProperty("--pp-gap",`${y}px`),document.body.style.paddingTop=`${y}px`};L();const v=f&&typeof ResizeObserver<"u"?new ResizeObserver(L):null;return f&&v&&v.observe(f),window.addEventListener("resize",L),()=>{v==null||v.disconnect(),window.removeEventListener("resize",L),document.body.style.paddingTop=""}},[]),e.jsxs(e.Fragment,{children:[e.jsx("style",{children:Sy}),e.jsx("nav",{className:`pp-nav pp-nav-${r}`,"aria-label":"Primary",children:e.jsxs("div",{className:`pp-nav-inner${t?" pp-nav-min":""}`,children:[e.jsx("a",{href:a,className:"pp-nav-brand","aria-label":"Proplace",children:e.jsx("img",{src:"/logo.png",alt:"Proplace"})}),!t&&e.jsx("nav",{className:"pp-nav-sections","aria-label":"Sections",children:o.sections.map(f=>e.jsx("a",{href:f.href,children:f.label},f.href))}),t?e.jsxs("span",{className:"pp-nav-min-r",children:[e.jsx(ea,{}),u?e.jsx(wi,{fundType:u.fund_type}):e.jsx("button",{type:"button",onClick:g,className:"pp-nav-link pp-nav-cta",children:o.logIn})]}):e.jsxs("div",{className:"pp-nav-end",children:[u?e.jsx(wi,{fundType:u.fund_type}):e.jsx("button",{type:"button",onClick:g,className:"pp-nav-link pp-nav-cta",children:o.logIn}),e.jsx(ea,{})]})]})}),c&&e.jsx(Ur,{onClose:()=>l(!1),onSignupClick:()=>{l(!1),p(!0)}}),d&&e.jsx(Qr,{onClose:()=>p(!1)})]})}const Sy=` 803.pp-nav { 804 position: fixed; 805 top: 0; left: 0; right: 0; 806 z-index: 60; 807 background: rgba(255, 255, 255, 0.72); 808 backdrop-filter: saturate(180%) blur(14px); 809 -webkit-backdrop-filter: saturate(180%) blur(14px); 810 border-bottom: 1px solid rgba(0, 0, 0, 0.06); 811 height: 60px; 812 display: flex; 813 align-items: center; 814} 815.pp-nav-inner { 816 width: 100%; 817 max-width: 1200px; 818 margin: 0 auto; 819 padding: 0 32px; 820 display: flex; 821 align-items: center; 822 justify-content: space-between; 823 gap: 16px; 824 position: relative; 825} 826/* Tout ce qui est à droite de la marque : menu + bouton de langue + burger, 827 sur UNE seule ligne (le bouton EN|FR ne passe jamais à la ligne). */ 828.pp-nav-end { 829 display: flex; 830 align-items: center; 831 gap: 14px; 832 min-width: 0; 833} 834.pp-nav-brand { 835 flex: 0 0 auto; 836 margin-right: 8px; 837 display: flex; 838 align-items: center; 839 text-decoration: none; 840} 841.pp-nav-brand img { height: 24px; width: auto; display: block; } 842/* Les surfaces éditoriales, collées à la marque (margin-right:auto pousse 843 le bloc compte tout à droite malgré le space-between du conteneur). */ 844.pp-nav-sections { 845 display: flex; 846 align-items: center; 847 gap: 22px; 848 margin-right: auto; 849 padding-left: 20px; 850 position: relative; 851} 852.pp-nav-sections::before { 853 content: ''; 854 position: absolute; 855 left: 0; top: 50%; 856 transform: translateY(-50%); 857 width: 1px; height: 16px; 858 background: rgba(15,29,51, .12); 859} 860.pp-nav-sections a { 861 position: relative; 862 font-family: var(--pp-body); 863 font-size: 13.5px; 864 font-weight: 500; 865 letter-spacing: .005em; 866 color: var(--sub); 867 text-decoration: none; 868 white-space: nowrap; 869 padding: 6px 0; 870 transition: color .2s ease; 871} 872.pp-nav-sections a::after {
873 content: ''; 874 position: absolute; 875 left: 0; right: 0; bottom: 1px; 876 height: 1.5px; 877 border-radius: 2px; 878 background: #12A150; 879 transform: scaleX(0); 880 transform-origin: left center; 881 transition: transform .22s ease; 882} 883.pp-nav-sections a:hover { color: var(--ink); } 884.pp-nav-sections a:hover::after { transform: scaleX(1); } 885.pp-nav-list { 886 display: flex; 887 align-items: center; 888 flex-wrap: nowrap; 889 justify-content: flex-end; 890 gap: 16px; 891 list-style: none; 892 margin: 0; 893 padding: 0; 894 min-width: 0; 895} 896.pp-nav-list > li { flex: 0 0 auto; display: flex; align-items: center; } 897.pp-nav-link { 898 position: relative; 899 display: inline-block; 900 white-space: nowrap; 901 font-family: var(--pp-body); 902 font-size: 13px; 903 font-weight: 500; 904 letter-spacing: .01em; 905 color: var(--sub); 906 text-decoration: none; 907 background: none; 908 border: none; 909 padding: 6px 0; 910 cursor: pointer; 911 transition: color .2s ease; 912} 913.pp-nav-link::after { 914 content: ''; 915 position: absolute; 916 left: 0; right: 0; bottom: 0; 917 height: 1px; 918 background: var(--green); 919 transform: scaleX(0); 920 transform-origin: center; 921 transition: transform .2s ease; 922} 923.pp-nav-link:hover { color: var(--ink); } 924.pp-nav-link:hover::after { transform: scaleX(1); } 925.pp-nav-link.is-active { color: var(--ink); } 926.pp-nav-link.is-active::after { transform: scaleX(1); } 927/* Un SEUL vert de marque dans la barre : celui du bouton « Découvrir mes cibles » 928 de la home (--brand #12A150), et non le vert clair historique #12A150. */ 929.pp-nav-pipe { font-weight: 800; color: #0E8A44 !important; } 930.pp-nav-cta { background: #12A150; color: #fff; font-weight: 600; 931 padding: 8px 14px; border-radius: 9px; } 932.pp-nav-cta:hover { background: #0E8A44; color: #fff; } 933.pp-nav-cta::after { display: none; } 934/* News + Analysis = bloc SECTION distinct (segmented pill vert) â autre partie du site */ 935.pp-nav-sect { display: inline-flex; align-items: center; border: 1px solid #cfe8da; 936 background: #eef9f2; border-radius: 22px; overflow: hidden; flex-shrink: 0; } 937.pp-nav-sect a { padding: 7px 15px; color: #2b7a52; font-weight: 600; font-size: 13px; 938 text-decoration: none; } 939.pp-nav-sect a + a { border-left: 1px solid #cfe8da; } 940.pp-nav-sect a:hover { background: var(--green, #12A150); color: #fff; } 941.pp-nav-inner.pp-nav-min { justify-content: flex-end; } 942.pp-nav-min-r { display: inline-flex; align-items: center; gap: 14px; } 943 944.pp-nav-burger { 945 display: none; 946 flex: 0 0 auto; 947 width: 28px; 948 height: 28px; 949 background: none; 950 border: none; 951 cursor: pointer; 952 padding: 0; 953 flex-direction: column; 954 justify-content: center; 955 gap: 6px; 956} 957.pp-nav-burger span { 958 display: block; 959 width: 22px; 960 height: 1.5px; 961 background: var(--ink); 962 margin: 0 auto; 963 transition: transform .25s ease, opacity .2s ease; 964} 965.pp-nav-burger.is-open span:first-child { transform: translateY(3.75px) rotate(45deg); } 966.pp-nav-burger.is-open span:last-child { transform: translateY(-3.75px) rotate(-45deg); } 967 968.pp-nav-drawer { 969 position: fixed; 970 top: 60px; left: 0; right: 0; bottom: 0; 971 background: #ffffff; 972 z-index: 58; 973 opacity: 0; 974 pointer-events: none; 975 transition: opacity .25s ease; 976 display: flex; 977 align-items: flex-start; 978 justify-content: center; 979 padding-top: 48px; 980 overflow-y: auto; 981} 982.pp-nav-drawer.is-open { opacity: 1; pointer-events: auto; } 983.pp-nav-drawer ul { 984 list-style: none; 985 margin: 0; 986 padding: 0; 987 display: flex; 988 flex-direction: column; 989 gap: 32px; 990 align-items: center; 991} 992.pp-nav-drawer a, 993.pp-nav-drawer button { 994 font-family: var(--pp-body); 995 font-size: 22px; 996 font-weight: 400; 997 color: var(--ink); 998 text-decoration: none; 999 background: none; 1000 border: none; 1001 cursor: pointer; 1002} 1003.pp-nav-drawer .pp-nav-cta { color: var(--green); font-weight: 600; } 1004/* Menu « My account » déplié dans le tiroir mobile : 3 liens empilés, centrés, 1005 au même rythme vertical que les autres entrées du tiroir. */ 1006.pp-nav-drawer-acct { display: flex; flex-direction: column; gap: 32px; align-items: center; } 1007.pp-nav-drawer-acct a { color: var(--green); font-weight: 600; } 1008/* « Déconnexion » (showLogout) : même rythme que les autres entrées, teinte sortie */ 1009.pp-nav-drawer-acct button { color: var(--sub); font-weight: 500; } 1010/* Bouton de langue dans le menu mobile : agrandi pour être clairement tappable */ 1011.pp-nav-drawer-lang .pp-lang button { font-size: 16px; padding: 9px 18px; } 1012 1013/* Resserre un peu sur les écrans intermédiaires */ 1014@media (max-width: 1180px) { 1015 .pp-nav-list { gap: 12px; } 1016 .pp-nav-link { font-size: 12.5px; } 1017} 1018/* Le menu français est plus large â il se replie en burger plus tôt que l'anglais. 1019 Le bouton EN|FR, lui, reste TOUJOURS visible dans la barre (hors de la liste). */ 1020@media (max-width: 1120px) { 1021 .pp-nav-fr .pp-nav-list { display: none; } 1022 .pp-nav-fr .pp-nav-burger { display: flex; } 1023} 1024@media (max-width: 880px) { 1025 .pp-nav-en .pp-nav-list { display: none; } 1026 .pp-nav-en .pp-nav-burger { display: flex; } 1027} 1028@media (max-width: 1100px) { 1029 .pp-nav-sections { gap: 14px; padding-left: 14px; } 1030 .pp-nav-sections a { font-size: 12.5px; } 1031} 1032/* Une ligne : Live + Veille glissent, Se connecter + EN|FR restent visibles. */ 1033@media (max-width: 760px) { 1034 .pp-nav { height: 48px; overflow: hidden; } 1035 .pp-nav-inner { display: flex; flex-wrap: nowrap; padding: 0 12px; gap: 8px; } 1036 .pp-nav-brand { margin-right: 0; flex: none; } 1037 .pp-nav-brand img { height: 20px; } 1038 .pp-nav-end { flex: none; gap: 7px; margin-left: 0; } 1039 .pp-nav-sections { display: flex; flex: 1 1 auto; min-width: 0; gap: 14px; 1040 padding: 0 16px 0 10px; margin: 0; overflow-x: auto; overflow-y: hidden; 1041 -webkit-overflow-scrolling: touch; scrollbar-width: none; 1042 mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 18px), transparent); 1043 -webkit-mask-image: linear-gradient(90deg, #000 0, #000 calc(100% - 18px), transparent); } 1044 .pp-nav-sections::-webkit-scrollbar { display: none; } 1045 .pp-nav-sections::before { height: 12px; } 1046 .pp-nav-sections a { flex: 0 0 auto; font-size: 13px; padding: 6px 0; } 1047 .pp-nav-link { font-size: 12px; padding: 6px 0; white-space: nowrap; } 1048 .pp-nav-cta { padding: 6px 10px; font-size: 12px; } 1049 .pp-lang button { padding: 4px 8px; font-size: 11px; } 1050 .pp-nav-drawer { top: var(--pp-gap, 48px); } 1051} 1052`,Ey={en:{tagline:"Your AI Corporate Developer",news:"Live",marches:"Sector watch",home:"Home",newsletter:"Newsletter",insights:"Explore",account:"Account",logIn:"Log in",demo:"Cockpit demo"},fr:{tagline:"Votre AI Corporate Developer",news:"Live",marches:"Veille sectorielle",home:"Accueil",newsletter:"Newsletter",insights:"Explorer",account:"Compte",logIn:"Se connecter",demo:"Démo du cockpit"}};function Nt(){const{lang:t,localizePath:n}
1052=ae(),r=Ey[t],[i,s]=m.useState(!1),[a,o]=m.useState(!1),c=Ge();return e.jsxs("footer",{className:"ppf",children:[e.jsx("style",{children:Ny}),e.jsxs("div",{className:"ppf-in",children:[e.jsxs("div",{className:"ppf-brand",children:[e.jsx("a",{href:n("/"),"aria-label":"Proplace",children:e.jsx("img",{src:"/logo.png",alt:"Proplace"})}),e.jsx("p",{children:r.tagline})]}),e.jsxs("nav",{className:"ppf-nav",children:[e.jsx("a",{href:"/actualites/",children:r.news}),e.jsx("a",{href:"/actualites/operations/secteurs/",children:r.marches}),e.jsx(Ti,{to:t==="fr"?"/fr/newsletter":"/en/newsletter",children:r.newsletter}),e.jsx(Ti,{to:n("/demo"),children:r.demo}),c?e.jsx("a",{href:"/api/",target:"_blank",rel:"noopener",children:"API"}):null]}),e.jsx("div",{className:"ppf-acct",children:c?e.jsx(wi,{fundType:c.fund_type,variant:"inline"}):e.jsx("button",{type:"button",onClick:()=>s(!0),children:r.logIn})}),e.jsx("span",{className:"ppf-copy",children:"© 2026 Proplace"})]}),i&&e.jsx(Ur,{onClose:()=>s(!1),onSignupClick:()=>{s(!1),o(!0)}}),a&&e.jsx(Qr,{onClose:()=>o(!1)})]})}const Ny=` 1053.ppf{display:block;background:#0F1D33;color:#c7d0db;font-family:var(--pp-body); 1054margin-top:0;padding:0;border-top:none} 1055.ppf-in{max-width:1180px;margin:0 auto;padding:16px 24px;display:flex;align-items:center; 1056justify-content:space-between;gap:16px 28px;flex-wrap:wrap} 1057.ppf-brand{display:flex;align-items:center;gap:12px;min-width:0} 1058.ppf-brand a{display:inline-block;flex:none} 1059.ppf-brand img{height:22px;display:block;filter:brightness(0) invert(1);opacity:.92} 1060.ppf-brand p{font-size:13px;color:#9fb0c4;margin:0;line-height:1.3;white-space:nowrap} 1061.ppf-nav,.ppf-acct{display:flex;align-items:center;flex-wrap:wrap;gap:6px 18px} 1062.ppf-nav a,.ppf-acct a,.ppf-acct button{font-size:13.5px;color:#c7d0db;text-decoration:none; 1063background:none;border:none;padding:0;cursor:pointer;font-family:inherit} 1064.ppf-nav a:hover,.ppf-acct a:hover,.ppf-acct button:hover{color:#fff} 1065.ppf .pp-acct-inline{flex-direction:row;gap:18px;align-items:center} 1066.ppf .pp-acct-inline a,.ppf .pp-acct-inline button{display:inline;margin:0} 1067.ppf-copy{font-size:12.5px;color:#7d93ab;margin-left:auto} 1068@media(max-width:760px){ 1069 .ppf-in{padding:14px 18px;gap:12px} 1070 .ppf-brand p{display:none} 1071 .ppf-copy{margin-left:0;width:100%;text-align:center} 1072} 1073`,Bh="https://proplace.co";function ti(t,n,r){if(typeof document>"u")return;let i=document.head.querySelector(`meta[${t}="${n}"]`);i||(i=document.createElement("meta"),i.setAttribute(t,n),document.head.appendChild(i)),i.setAttribute("content",r)}function Ya(t,n,r){if(typeof document>"u")return;const i=r?`link[rel="${t}"][hreflang="${r}"]`:`link[rel="${t}"]:not([hreflang])`;let s=document.head.querySelector(i);s||(s=document.createElement("link"),s.setAttribute("rel",t),r&&s.setAttribute("hreflang",r),document.head.appendChild(s)),s.setAttribute("href",n)}function ht(t){const{lang:n}=ae(),r=Wr();m.useEffect(()=>{const i=t[n];if(!i)return;document.title=i.title,ti("name","description",i.description);const s=Ap(r.pathname),a=Bh+(s==="/newsletter"?"/en/newsletter":s),o=Bh+co(s,"fr"),c=n==="fr"?o:a;Ya("canonical",c),Ya("alternate",a,"en"),Ya("alternate",o,"fr"),Ya("alternate",a,"x-default"),ti("property","og:title",i.title),ti("property","og:description",i.description),ti("property","og:url",c),ti("property","og:locale",n==="fr"?"fr_FR":"en_US"),ti("property","og:locale:alternate",n==="fr"?"en_US":"fr_FR")},[n,r.pathname,t])}const Bx=m.createContext({openRdv:()=>{}}),pl=()=>m.useContext(Bx);function ul({children:t}){const[n,r]=m.useState(!1),[i,s]=m.useState(""),a=m.useCallback(c=>{if(c){s(c);try{const l=new URL(window.location.href);l.searchParams.set("site",c),window.history.replaceState(null,"",l)}catch{}}r(!0)},[]),o=m.useMemo(()=>({openRdv:a}),[a]);return e.jsxs(Bx.Provider,{value:o,children:[t,n&&e.jsx(Pi,{subject:i||void 0,onClose:()=>r(!1)})]})}const Cy=` 1074.home3{ 1075 /* Les noms locaux restent (des centaines d'usages) ; les VALEURS viennent des 1076 jetons du site â src/styles/tokens.css. Une seule source. */ 1077 --brand:var(--pp-green); --brand-d:var(--pp-green-h); --brand-l:var(--pp-green-bg); 1078 --red:var(--pp-red); 1079 --panel:var(--pp-bg); --panel2:var(--pp-bg-zone); --panel3:var(--pp-bg-page); 1080 --line:var(--pp-line); --line2:var(--pp-line-dash); 1081 --ink:var(--pp-ink); --muted:var(--pp-ink-2); --dim:var(--pp-ink-4); 1082 --p1:var(--pp-p1);
1082 --p2:var(--pp-p2); --p3:var(--pp-p3); --p4:var(--pp-p4); 1083 /* --mono ne designe plus un chasse-fixe : les chapeaux, rails et libelles qui 1084 s'en servaient etaient en 9,5-10px capitales espacees (README v3 : interdit). */ 1085 --mono:var(--pp-body); 1086 --body:var(--pp-body); 1087 --surf:var(--pp-sh-card); 1088 --surf-h:var(--pp-sh-float); 1089 background:var(--panel);color:var(--ink);font-family:var(--body);font-size:16px; 1090 line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility; 1091} 1092.home3,.home3 *{box-sizing:border-box} 1093.home3 button,.home3 input{font-family:inherit} 1094 1095/* ââ gabarit âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 1096.home3 .h3-wrap{max-width:1120px;margin:0 auto;padding:0 32px} 1097.home3 .h3-wrap.nar{max-width:840px} 1098.home3 .h3s{padding:104px 0;border-top:1px solid var(--line)} 1099.home3 .h3s.tint{background:var(--panel2)} 1100.home3 .h3s.center{text-align:center} 1101.home3 .h3s[id]{scroll-margin-top:80px} 1102 1103/* ââ typographie âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 1104.home3 .h3-h1{margin:0;font-size:clamp(33px,5vw,58px);line-height:1.04; 1105 letter-spacing:-.042em;font-weight:700;text-wrap:balance} 1106.home3 .h3-h2{margin:0;font-size:clamp(25px,3.2vw,39px);line-height:1.13; 1107 letter-spacing:-.036em;font-weight:700;text-wrap:balance} 1108.home3 .h3-h2 .soft{color:var(--muted);font-weight:600} 1109.home3 .h3-lead{margin:24px 0 0;font-size:clamp(16.5px,1.35vw,19px);line-height:1.66; 1110 color:var(--muted);text-wrap:pretty} 1111.home3 .h3-lead b{color:var(--ink);font-weight:600} 1112.home3 .h3-p{margin:0;font-size:15.5px;line-height:1.72;color:var(--muted)} 1113.home3 .h3-p b{color:var(--ink);font-weight:600} 1114.home3 .h3-eyeb{display:flex;align-items:center;gap:12px;margin:0 0 18px; 1115 font-family:var(--mono);font-size:12px;font-weight:500;color:var(--dim);font-variant-numeric:tabular-nums} 1116.home3 .h3-eyeb::before{content:"";display:block;width:22px;height:2px; 1117 background:var(--brand);border-radius:2px;flex:none} 1118/* Rythme éditorial : l'en-tête de CHAQUE section est centré (chapeau, titre, 1119 chapô) ; seuls les blocs de contenu â entonnoir, cartes, tarifs â reprennent 1120 l'alignement à gauche, qui est celui de la lecture. */ 1121.home3 .h3s>.h3-wrap>.h3-eyeb{justify-content:center} 1122.home3 .h3s>.h3-wrap>.h3-h2{text-align:center;margin-left:auto;margin-right:auto} 1123.home3 .h3s>.h3-wrap>.h3-lead{text-align:center;margin-left:auto;margin-right:auto; 1124 max-width:70ch} 1125.home3 .h3-pull{margin:0;font-size:clamp(18px,1.75vw,23px);line-height:1.52; 1126 letter-spacing:-.022em;font-weight:500;color:var(--ink);text-wrap:balance} 1127 1128/* ââ le champ d'adresse (Home2/SiteField, restylé ici) âââââââââââââââââââââ */ 1129.home3 .h3-field{margin:42px auto 0;max-width:600px} 1130.home3 .h3-fieldlbl{margin:0 0 13px;font-family:var(--mono);font-size:12px;color:var(--dim);font-weight:600;font-variant-numeric:tabular-nums} 1131.home3 .ur{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap;justify-content:center} 1132.home3 .uf{display:flex;align-items:center;gap:11px;flex:1 1 260px;min-width:0;height:56px; 1133 padding:0 18px;border:1px solid rgba(15,29,51,.11);border-radius:14px;background:var(--panel); 1134 font-size:16px;box-shadow:0 1px 2px rgba(15,29,51,.04);transition:border-color .18s,box-shadow .18s} 1135.home3 .uf:focus-within{border-color:rgba(15,29,51,.30);box-shadow:0 0 0 4px rgba(15,29,51,.05)} 1136.home3 .uf input{flex:1;min-width:0;border:0;outline:none;background:none; 1137 font-size:16.5px;color:var(--ink);letter-spacing:-.01em} 1138.home3 .uf input::placeholder{color:var(--dim)} 1139.home3 .uf input.shake{animation:h3-shk .42s} 1140@keyframes h3-shk{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}} 1141.home3 .uf.uf-err{border-color:#E5484D;box-shadow:0 0 0 4px rgba(229,72,77,.10)} 1142.home3 .uf-err-msg{margin:10px 0 0;font-size:13px;color:#E5484D;font-weight:500} 1143.home3 .ub{flex:none;height:56px;padding:0 26px;border:0;border-radius:14px; 1144 background:var(--brand);color:#fff;font-size:15.5px;font-weight:700;cursor:pointer; 1145 white-space:nowrap;letter-spacing:-.01em; 1146 box-shadow:0 2px 4px rgba(18,161,80,.20), 0 14px 28px -16px rgba(18,161,80,.75); 1147 transition:background .18s,transform .18s,box-shadow .18s} 1148.home3 .ub::after{content:"â";margin-left:10px;display:inline-block} 1149.home3 .ub:hover{background:var(--brand-d);transform:translateY(-1px); 1150 box-shadow:0 2px 4px rgba(18,161,80,.22), 0 18px 34px -16px rgba(18,161,80,.8)}
1151.home3 .ub:active{transform:none} 1152.home3 .usug{display:flex;gap:7px;margin-top:11px;flex-wrap:wrap;justify-content:center} 1153.home3 .usg{border:1px solid var(--line);background:var(--panel2);border-radius:99px; 1154 padding:5px 13px;font-size:12.5px;color:var(--muted);cursor:pointer;transition:border-color .16s,color .16s} 1155.home3 .usg:hover{border-color:var(--ink);color:var(--ink)} 1156 1157/* ââ hero ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 1158.home3 .h3-hero{padding:88px 0 78px;text-align:center;border-top:0} 1159.home3 .h3-hero .h3-h1{max-width:980px;margin:0 auto} 1160.home3 .h3-hero .h3-lead{max-width:66ch;margin:28px auto 0} 1161.home3 .h3-steps{display:grid;grid-template-columns:1fr 1fr;max-width:900px; 1162 margin:52px auto 0;text-align:left;border-top:1px solid var(--line)} 1163.home3 .h3-step{padding:26px 30px} 1164.home3 .h3-step+.h3-step{border-left:1px solid var(--line)} 1165.home3 .h3-step b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%; 1166 border:1px solid var(--line2);color:var(--muted);font-family:var(--mono);font-size:11px; 1167 font-weight:600;margin-bottom:13px} 1168.home3 .h3-step p{margin:0;font-size:14.5px;line-height:1.66;color:var(--muted)} 1169.home3 .h3-angles{display:flex;align-items:center;justify-content:center;gap:9px; 1170 flex-wrap:wrap;margin-top:40px} 1171@media (max-width:520px){ 1172.home3 .h3-angles{gap:6px;margin-top:30px} 1173.home3 .h3-angle{padding:0 12px;font-size:12px} 1174} 1175.home3 .h3-angle{display:inline-flex;align-items:center;height:28px;box-sizing:border-box; 1176 border:1px solid var(--line);border-radius:999px;padding:0 12px; 1177 font-size:12px;font-weight:600;white-space:nowrap;color:var(--ink);background:var(--panel2)} 1178 1179/* ââ le tri : l'entonnoir ââââââââââââââââââââââââââââââââââââââââââââââââââ */ 1180.home3 .h3-funnel{margin:54px 0 0;display:flex;flex-direction:column;gap:12px} 1181.home3 .h3-fr{display:grid;grid-template-columns:104px minmax(0,1fr) minmax(0,1.02fr); 1182 gap:26px;align-items:center} 1183.home3 .h3-frail{font-family:var(--mono);font-size:12px;color:var(--dim);text-align:right;line-height:1.4;font-weight:600;font-variant-numeric:tabular-nums} 1184.home3 .h3-fbar{display:flex;align-items:center;height:64px;border-radius:11px;padding:0 22px; 1185 font-size:clamp(20px,2.1vw,29px);font-weight:700;letter-spacing:-.04em;color:var(--ink); 1186 font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap;min-width:136px} 1187.home3 .h3-fr:nth-child(1) .h3-fbar{background:var(--p1)} 1188.home3 .h3-fr:nth-child(2) .h3-fbar{background:var(--p2)} 1189.home3 .h3-fr:nth-child(3) .h3-fbar{background:var(--p3)} 1190.home3 .h3-fr:nth-child(4) .h3-fbar{background:var(--p4);color:#fff; 1191 box-shadow:0 10px 26px -14px rgba(18,161,80,.85)} 1192.home3 .h3-flabel{font-size:14.5px;line-height:1.58;color:var(--muted)} 1193.home3 .h3-fr:nth-child(4) .h3-flabel{color:var(--ink);font-weight:600} 1194.home3 .h3-fcover{display:grid;grid-template-columns:104px minmax(0,1fr) minmax(0,1.02fr); 1195 gap:26px;align-items:center;margin-top:10px;padding-top:24px;border-top:1px solid var(--line)} 1196.home3 .h3-fcval{display:flex;align-items:baseline;gap:11px;flex-wrap:wrap} 1197.home3 .h3-fcval b{font-size:clamp(20px,2.1vw,29px);font-weight:700;letter-spacing:-.04em; 1198 color:var(--ink);font-variant-numeric:tabular-nums;line-height:1} 1199.home3 .h3-fcval em{font-style:normal;font-size:15px;font-weight:600;color:var(--muted)} 1200.home3 .h3-tri-p{max-width:74ch;margin:34px auto 0;text-align:center} 1201/* Le taux de MATCH est un DETAIL de la phrase du dessus : plus petit, plus pale. */ 1202.home3 .h3-tri-note{max-width:84ch;margin:9px auto 0;text-align:center; 1203 font-size:12.5px;line-height:1.6;color:var(--dim)} 1204/* Chapo des PLANS : 2 lignes (le chapo generique plafonne a 70ch). */ 1205.home3 .h3s>.h3-wrap>.h3-plans-lead{max-width:86ch} 1206.home3 .h3-tri-pull{margin:36px auto 0;padding-top:36px;border-top:1px solid var(--line); 1207 max-width:60ch;text-align:center} 1208 1209/* ââ la décision âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 1210.home3 .h3-dec{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr); 1211 gap:24px;margin-top:50px;align-items:stretch;text-align:left} 1212.home3 .h3-card{background:var(--panel);border:1px solid rgba(15,29,51,.08); 1213 border-radius:20px;padding:30px;box-shadow:var(--surf)} 1214.home3 .h3-yn{display:grid;grid-template-columns:1fr 1fr;gap:14px} 1215.home3 .h3-btn{display:flex;align-items:center;justify-content:center;gap:11px; 1216 border-radius:14px;padding:24px 10px;color:#fff; 1217 font-size:19px;font-weight:800;letter-spacing:.04em} 1218.home3 .h3-btn svg{flex:none;display:block} 1219.home3 .h3-btn.y{background:var(--brand);box-shadow:0 10px 24px -14px rgba(18,161,80,.9)} 1220.home3 .h3-btn.n{background:var(--red);box-shadow:0 10px 24px -14px rgba(229,72,77,.85)} 1221.home3 .h3-route{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px} 1222.home3 .h3-route span{font-size:12.5px;line-height:1.5;color:var(--muted);text-align:center} 1223.home3 .h3-route span::before{content:"â";display:block;margin-bottom:7px; 1224 color:var(--line2);font-size:14px} 1225.home3 .h3-decnote{margin:26px 0 0;padding-top:24px;border-top:1px solid var(--line); 1226 font-size:14px;line-height:1.72;color:var(--muted)} 1227.home3 .h3-revh{display:flex;align-items:center;gap:12px;flex-wrap:wrap; 1228 padding-bottom:20px;border-bottom:1px solid var(--line)} 1229.home3 .h3-revk{font-family:var(--mono);font-size:12px;color:var(--brand-d);background:var(--brand-l); 1230 border-radius:99px;padding:6px 12px;font-weight:600;font-variant-numeric:tabular-nums} 1231.home3 .h3-revt{font-size:16px;font-weight:700;letter-spacing:-.022em} 1232/* La revue est une LISTE (plus de rails Stan/Nous/Vous) : puce verte, filets 1233 entre les points, dernier sans filet. */ 1234.home3 .h3-revr{position:relative;margin:0;padding:14px 0 14px 20px; 1235 border-bottom:1px solid var(--line);font-size:13.8px;line-height:1.7;color:var(--muted)} 1236.home3 .h3-revr:last-child{border-bottom:0;padding-bottom:0} 1237.home3 .h3-revr::before{content:"";position:absolute;
1237left:2px;top:23px; 1238 width:6px;height:6px;border-radius:50%;background:var(--brand);opacity:.7} 1239 1240/* ââ qui est Stan ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 1241.home3 .h3-trip{display:grid;grid-template-columns:repeat(3,1fr);max-width:900px; 1242 margin:0 auto;border-top:1px solid var(--line2);border-bottom:1px solid var(--line2)} 1243.home3 .h3-trip span{padding:28px 16px;text-align:center;font-size:clamp(19px,2.2vw,27px); 1244 font-weight:700;letter-spacing:-.032em;line-height:1.15} 1245.home3 .h3-trip span+span{border-left:1px solid var(--line)} 1246.home3 .h3-stan-p{margin:34px auto 0;max-width:62ch} 1247.home3 .h3-logoswrap{margin:52px auto 0;max-width:780px} 1248.home3 .h3-logoslbl{margin:0 0 20px;font-family:var(--mono);font-size:12px;color:var(--dim);font-weight:600;font-variant-numeric:tabular-nums} 1249/* mix-blend-mode:multiply â trust-logos.png porte des fonds BLANCS opaques 1250 (Ardian, Mirakl) qui se verraient comme des rectangles sur la section teintée. */ 1251.home3 .h3-logos{display:block;width:100%;height:auto;opacity:.88;mix-blend-mode:multiply} 1252.home3 .h3-stan-pull{margin:52px auto 0;max-width:44ch} 1253.home3 .h3-closing{margin:22px auto 0;max-width:64ch;font-size:clamp(16px,1.4vw,18.5px); 1254 line-height:1.65;color:var(--muted);text-wrap:pretty} 1255.home3 .h3-closing b{color:var(--ink);font-weight:600} 1256 1257/* ââ les plans : raffinements de la grille partagée .prc2 ââââââââââââââââââ */ 1258/* La grille est un bloc de LECTURE : elle reste alignée à gauche même quand 1259 l'en-tête de section est centré. */ 1260.home3 .prc2{text-align:left} 1261.home3 .prc2 .prices{gap:20px;margin-top:40px;align-items:stretch} 1262.home3 .prc2 .price{display:flex;flex-direction:column;padding:30px;border-radius:20px; 1263 border:1px solid rgba(15,29,51,.08);box-shadow:var(--surf); 1264 transition:box-shadow .22s ease,transform .22s ease} 1265.home3 .prc2 .price:hover{transform:translateY(-3px);box-shadow:var(--surf-h)} 1266.home3 .prc2 .price.hi{border-color:rgba(18,161,80,.38); 1267 box-shadow:0 0 0 4px rgba(18,161,80,.07), var(--surf)} 1268.home3 .prc2 .price.hi:hover{box-shadow:0 0 0 4px rgba(18,161,80,.07), var(--surf-h)} 1269.home3 .prc2 .price .badge{top:-12px;padding:4px 13px;font-size:12px;font-weight:600} 1270.home3 .prc2 .price .p{font-size:clamp(28px,2.6vw,34px);letter-spacing:-.04em;margin:10px 0 4px} 1271.home3 .prc2 .price ul{flex:1 1 auto;margin-bottom:22px} 1272.home3 .prc2 .price li{font-size:13.5px;line-height:1.6;margin-bottom:11px} 1273.home3 .prc2 .price button{border-radius:12px;padding:14px;font-size:14px; 1274 transition:opacity .18s,transform .18s} 1275.home3 .prc2 .price button:hover{opacity:.9;transform:translateY(-1px)} 1276/* Les trois listes de puces démarrent à la MÃME hauteur : en-tête et jauge 1277 calés (l'Essai n'a ni mentions fines ni note de cadence). */ 1278.home3 .prc2 .phead{min-height:184px} 1279.home3 .prc2 .q2{border-radius:10px;padding:14px 16px;margin-bottom:20px; 1280 min-height:118px;display:flex;flex-direction:column;justify-content:center} 1281/* Les deux mentions sous la grille tiennent chacune sur UNE ligne au-dessus de 1282 1180 px (demande Antoine) ; en dessous elles se replient normalement. */ 1283.home3 .prc2 .under{border:0;background:none;padding:0;margin:34px auto 0; 1284 max-width:none;text-align:center;font-size:12.5px;line-height:1.7} 1285.home3 .prc2 .under .ment{margin-top:7px;font-size:11.5px} 1286@media (min-width:1180px){ 1287.home3 .prc2 .under,.home3 .prc2 .under .ment{white-space:nowrap} 1288} 1289 1290/* ââ la reprise ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 1291.home3 .h3-reprise{padding:96px 0 108px} 1292.home3 .h3-repcard{background:linear-gradient(175deg,#0F1D33 0%,#0F1D33 100%); 1293 border-radius:28px;padding:clamp(46px,5vw,76px) clamp(26px,4vw,60px);text-align:center; 1294 box-shadow:0 30px 72px -44px rgba(15,29,51,.85)} 1295.home3 .h3-repcard .h3-h2{color:#fff;max-width:800px;margin:0 auto} 1296.home3 .h3-repcard .h3-lead{color:#A7B6CC;max-width:64ch;margin:26px auto 0} 1297.home3 .h3-repcard .h3-lead b{color:#fff} 1298.home3 .h3-repcard .uf{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.17); 1299 box-shadow:none} 1300.home3 .h3-repcard .uf:focus-within{border-color:rgba(255,255,255,.42); 1301 box-shadow:0 0 0 4px rgba(255,255,255,.07)} 1302.home3 .h3-repcard .uf input{color:#fff} 1303.home3 .h3-repcard .uf input::placeholder{color:rgba(255,255,255,.40)} 1304.home3 .h3-repcard .usg{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16); 1305 color:#B8C6D6} 1306.home3 .h3-repcard .usg:hover{border-color:#fff;color:#fff} 1307 1308/* ââ adaptations âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 1309@media (max-width:1000px){ 1310.home3 .h3-dec{grid-template-columns:1fr} 1311.home3 .h3-fr,.home3 .h3-fcover{grid-template-columns:88px minmax(0,1fr) minmax(0,1fr);gap:20px} 1312} 1313@media (max-width:820px){ 1314.home3 .h3s{padding:66px 0} 1315.home3 .h3-hero{padding:58px 0 56px} 1316.home3 .h3-wrap{padding:0 22px} 1317.home3 .h3-hero .h3-h1{max-width:none} 1318.home3 .h3-steps{grid-template-columns:1fr;margin-top:42px} 1319.home3 .h3-step+.h3-step{border-left:0;border-top:1px solid var(--line)} 1320.home3 .h3-step{padding:22px 0} 1321.home3 .h3-fr,.home3 .h3-fcover{grid-template-columns:1fr;gap:9px} 1322.home3 .h3-fcover{margin-top:4px;padding-top:22px} 1323.home3 .h3-frail{text-align:left} 1324.home3 .h3-fbar{height:56px;padding:0 18px} 1325.home3 .h3-funnel{gap:22px} 1326.home3 .h3-trip{grid-template-columns:1fr} 1327.home3 .h3-trip span{padding:20px 12px} 1328.home3 .h3-trip span+span{border-left:0;border-top:1px solid var(--line)} 1329.home3 .h3-revr{grid-template-columns:1fr;gap:7px} 1330.home3 .h3-card{padding:24px} 1331.home3 .h3-reprise{padding:66px 0 76px} 1332.home3 .h3-repcard{border-radius:22px} 1333.home3 .ub{width:100%} 1334.home3 .prc2 .phead,.home3 .prc2 .q2{min-height:0} 1335} 1336@media (max-width:420px){ 1337.home3 .h3-btn{font-size:17px;padding:20px 6px} 1338.home3 .h3-route span{font-size:11.5px} 1339} 1340/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ 1341 RESTYLE v3 â dernier bloc, donc le dernier mot. Les couleurs viennent déjà 1342 des jetons ; ce qui reste, c'est la GÃOMÃTRIE de la maquette Accueil.html. 1343 âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 1344
1345/* Le champ « premium » du hero : une pilule blanche posée sur une ombre, un 1346 point vert à gauche, et le bouton arrondi COLLà dedans à droite. C'était un 1347 rectangle 14px avec un bouton détaché et un halo gris â la première chose 1348 que voit un visiteur, et la seule qui lui demande quelque chose. */ 1349.home3 .ur{gap:0;background:var(--panel);border:1px solid var(--line); 1350 border-radius:var(--pp-r-pill);padding:6px 6px 6px 20px; 1351 box-shadow:var(--pp-sh-float);transition:border-color .18s,box-shadow .18s; 1352 flex-wrap:nowrap;align-items:center;max-width:600px;margin:0 auto} 1353.home3 .ur:hover,.home3 .ur:focus-within{border-color:var(--pp-green-soft); 1354 box-shadow:0 16px 40px rgba(18,161,80,.16)} 1355/* Le point vert de la maquette REMPLACE l'émoji globe que SiteField posait dans 1356 le champ : deux marques en tête de la même pilule, c'était une de trop â et 1357 l'émoji change de dessin d'un système à l'autre. L'émoji est retiré du 1358 composant (Home2/SiteField.tsx), le point est ici. */ 1359.home3 .ur::before{content:"";width:8px;height:8px;border-radius:50%; 1360 background:var(--pp-green);flex:none;margin-right:11px} 1361.home3 .uf{border:0;box-shadow:none;background:transparent;height:auto; 1362 padding:0;border-radius:0;flex:1 1 auto;gap:0} 1363.home3 .uf:focus-within{border:0;box-shadow:none} 1364.home3 .uf.uf-err{border:0;box-shadow:none} 1365/* La pilule est blanche aussi dans la carte de clôture. L'ancien champ sombre 1366 imposait du blanc avec une spécificité supérieure : le texte saisi et le 1367 placeholder devenaient invisibles après le restyle de la pilule. */ 1368.home3 .h3-repcard .uf{background:transparent;box-shadow:none} 1369.home3 .h3-repcard .uf:focus-within{background:transparent;box-shadow:none} 1370.home3 .h3-repcard .uf input{color:var(--ink);caret-color:var(--ink)} 1371.home3 .h3-repcard .uf input::placeholder{color:var(--dim);opacity:1} 1372.home3 .ur:has(.uf-err){border-color:var(--pp-red); 1373 box-shadow:0 0 0 4px rgba(229,72,77,.12)} 1374.home3 .ub{height:44px;padding:0 22px;border-radius:var(--pp-r-pill); 1375 box-shadow:var(--pp-sh-cta)} 1376.home3 .ub:hover{box-shadow:0 6px 16px rgba(18,161,80,.34)} 1377@media (max-width:520px){ 1378 /* sous 520px la pilule ne peut plus tenir le bouton : il passe dessous, et 1379 la pilule redevient un champ simple. */ 1380 .home3 .ur{flex-wrap:wrap;border-radius:var(--pp-r-l);padding:12px 14px;gap:10px} 1381 .home3 .ub{width:100%} 1382} 1383 1384/* Cartes : le handoff pose 14-16px pour une carte de contenu (on était à 20). */ 1385.home3 .h3-card,.home3 .prc2 .price{border-radius:var(--pp-r-l)} 1386 1387/* Les rails de l'entonnoir : plus de rail monospace en capitales, un libellé 1388 aligné à droite comme dans la maquette. */ 1389.home3 .h3-frail{font-size:12px;font-weight:600;color:var(--dim); 1390 text-align:right;line-height:1.4} 1391.home3 .h3-fbar{border-radius:9px} 1392 1393/* Le chapeau de section : « â Le tri », en vert, casse normale. C'était un 1394 filet de 22px suivi d'un mot en capitales espacées 10px monospace ; la 1395 maquette écrit le tiret DANS le texte, ce qui se lit du premier coup. */ 1396.home3 .h3-eyeb{font-size:12px;font-weight:600;color:var(--pp-green);gap:6px} 1397.home3 .h3-eyeb::before{content:"â";width:auto;height:auto;background:none; 1398 border-radius:0;color:inherit;font-weight:600} 1399.home3 .h3s>.h3-wrap>.h3-eyeb{justify-content:center} 1400 1401/* La carte de clôture : le dégradé et le rayon de la maquette. */ 1402.home3 .h3-repcard{background:linear-gradient(160deg,#101F36,#0B1626); 1403 border-radius:22px} 1404 1405/* ââ la chaîne de valeur M&A (03/10) âââââââââââââââââââââââââââââââââââââââââ 1406 Bandeau Stan au-dessus des cinq briques, jusqu'au suivi de l'intégration ; 1407 acteurs barrés (Proplace peut s'y substituer) ou verts (Proplace les complète). */ 1408.home3 .h3-ch-h2{white-space:normal} 1409@media (min-width:1000px){.home3 .h3s>.h3-wrap>.h3-ch-h2{white-space:nowrap;max-width:none;font-size:clamp(28px,2.6vw,34px)}} 1410.home3 .h3-ch-legend{display:flex;justify-content:center;gap:8px 18px;flex-wrap:wrap;margin:30px 0 22px;font-size:12.5px;color:var(--muted);font-weight:500} 1411.home3 .h3-ch-legend>span{display:inline-flex;align-items:center;gap:7px} 1412.home3 .h3-ch-cover{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:8px} 1413.home3 .h3-ch-band{grid-column:1 / -1;position:relative;height:38px} 1414.home3 .h3-ch-band::before{content:"";position:absolute;
1414left:0;right:0;top:50%;height:2px;background:var(--brand);border-radius:2px} 1415.home3 .h3-ch-band i{position:absolute;top:50%;width:10px;height:10px;border-radius:50%;background:var(--brand);transform:translateY(-50%)} 1416.home3 .h3-ch-band i.l{left:0}.home3 .h3-ch-band i.r{right:0} 1417.home3 .h3-ch-band b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--pp-navy);color:#fff;font-size:12.5px;font-weight:600;padding:7px 14px;border-radius:999px;white-space:nowrap;letter-spacing:-.01em} 1418.home3 .h3-ch{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;align-items:stretch} 1419.home3 .h3-ch-brick{background:var(--panel);border:1px solid var(--pp-green-bd);border-radius:var(--pp-r-l);box-shadow:var(--surf);display:flex;flex-direction:column;min-width:0} 1420.home3 .h3-ch-brick.out{background:var(--panel2);border:1px dashed var(--line2);box-shadow:none} 1421.home3 .h3-ch-bh{padding:18px 18px 12px;border-bottom:1px solid var(--line)} 1422.home3 .h3-ch-num{font-size:12px;font-weight:600;color:var(--dim)} 1423.home3 .h3-ch-brick h3{margin:4px 0 0;font-size:17px;font-weight:700;letter-spacing:-.02em;line-height:1.2} 1424.home3 .h3-ch-obj{margin:6px 0 0;font-size:13px;color:var(--muted);line-height:1.45} 1425.home3 .h3-ch-sec{padding:12px 18px;border-bottom:1px solid var(--line)} 1426.home3 .h3-ch-sec:last-child{border-bottom:0;padding-bottom:16px} 1427.home3 .h3-ch-lab{font-size:11.5px;font-weight:600;color:var(--dim);margin-bottom:6px} 1428.home3 .h3-ch-chips{display:flex;flex-wrap:wrap;gap:5px} 1429.home3 .h3-ch-chip{font-size:11.5px;font-weight:600;color:var(--muted);background:var(--panel2);border:1px solid var(--line);border-radius:999px;padding:2px 8px;white-space:nowrap} 1430.home3 .h3-ch-chip.x{text-decoration:line-through;text-decoration-color:var(--pp-red-tx);text-decoration-thickness:1.5px;color:var(--dim)} 1431.home3 .h3-ch-chip.keep{border-color:var(--pp-green-bd);background:var(--brand-l);color:var(--pp-green-tx)} 1432.home3 .h3-ch-pb{font-size:12.5px;color:var(--muted);line-height:1.45;margin:0} 1433.home3 .h3-ch-role{font-size:13px;color:var(--ink);line-height:1.45;margin:0} 1434.home3 .h3-ch-role p{margin:0} 1435.home3 .h3-ch-role p+p{margin-top:9px} 1436.home3 .h3-ch-role b{font-weight:700} 1437.home3 .h3-ch-brick.out .h3-ch-role{color:var(--pp-ink-3)} 1438.home3 .h3-ch-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px} 1439.home3 .h3-ch-tag{font-size:11.5px;font-weight:700;border-radius:6px;padding:3px 8px;line-height:1.25} 1440.home3 .h3-ch-tag.r{background:var(--brand);color:#fff} 1441.home3 .h3-ch-tag.c{background:var(--brand-l);color:var(--pp-green-tx);border:1px solid var(--pp-green-bd)} 1442.home3 .h3-ch-tag.o{background:var(--panel2);color:var(--pp-ink-3);border:1px solid var(--line)} 1443.home3 .h3-ch-claim{margin:40px auto 0;text-align:center;font-size:clamp(17px,1.9vw,20px);font-weight:600;letter-spacing:-.015em;line-height:1.35;color:var(--ink);text-wrap:balance;max-width:52ch} 1444.home3 .h3-ch-claim::before{content:"";display:block;width:44px;height:3px;border-radius:2px;background:var(--brand);margin:0 auto 16px} 1445@media (min-width:1120px){.home3 .h3-ch-claim{white-space:nowrap;max-width:none}} 1446@media (max-width:980px){ 1447.home3 .h3-ch-cover{display:none} 1448.home3 .h3-ch{grid-template-columns:repeat(2,minmax(0,1fr))} 1449.home3 .h3-ch-brick.out{grid-column:1 / -1} 1450} 1451@media (max-width:620px){ 1452.home3 .h3-ch{grid-template-columns:1fr} 1453.home3 .h3-ch-legend{justify-content:flex-start} 1454} 1455 1456 1457@media (prefers-reduced-motion:reduce){ 1458.home3 *{transition:none!important;animation:none!important} 1459} 1460`,_y={hero:{h1:"Nous trouvons les entreprises que vous devriez suivre, financer ou racheter.",leadA:"Stan est votre ",leadB:"AI Corporate Developer",leadC:". Chaque nuit, il passe en revue toutes les sociétés de votre marché, retient celles qui généreraient le plus de synergies avec vous, et écarte les autres en écrivant pourquoi. Vous recevez ",leadD:"5 à 10 décisions par mois",leadE:", chacune accompagnée dâun mémo dâinvestissement détaillé.",fieldLabel:"Commencez en indiquant votre site web",placeholder:"votresite.com",cta:"Découvrir mes cibles",steps:["Stan en déduit vos critères et vous rend vos dix premières cibles.","Vous les validez ensuite de vive voix avec un Corporate Developer humain : il comprend comment vous raisonnez, puis règle Stan afin quâil raisonne comme vous."],angles:["Rachat","Prise de participation","Simple veille"]},tri:{eyeb:"Le tri",h2a:"Stan détecte, analyse et tri.",h2b:"Nous vérifions.",steps:[{rail
1460:"Votre marché",n:"~3 000",label:"sociétés pertinentes, et de nouvelles chaque jour",w:100},{rail:"Stan",n:"~245",label:"criblées chaque semaine, ~15 retenues",w:56},{rail:"Nous",n:"les 15",label:"analysées et tranchées, mémo à lâappui",w:34},{rail:"Vous",n:"~1 à 3",label:"à trancher chaque semaine, mémo détaillé à lâappui",w:20}],coverRail:"Couverture",coverValue:"~3 mois",coverLabel:"pour rattraper lâexistant â ensuite, la surveillance ne sâarrête plus",pA:"Stan élimine ",pB:"94 % du travail",pC:" avant quâil nâatteigne votre bureau. ",pD1:"Ce nâest pas une promesse : câest notre taux de MATCH mesuré auprès de nos 10 premiers clients",pD2:" : 6 % des sociétés criblées sont retenues, et vous disposez dâun verdict et dâun mémo pour chacune.",pull:"Aucune base de données ne fait ça â elle vous donne une liste, elle ne vous dit jamais ce quâelle a éliminé pour vous, ni ce qui va combler vos faiblesses et tirer parti de vos forces."},decision:{eyeb:"La décision",h2a:"Vous ne tranchez que sur les dossiers excellents.",h2b:"Et votre décision tient en deux boutons.",yes:"OUI",no:"NON",yesRoute:"part en « Validées » : lancer une due diligence",noRoute:"part en écartées",p:"Si vous ne tranchez pas, votre Corporate Developer regroupe les dossiers en attente et vous appelle le mardi ou le jeudi : il recueille votre avis et sâen sert pour améliorer Stan.",revueKicker:"Chaque lundi",revueTitle:"Vous recevez votre revue de deal flow, qui comprend :",rows:["toutes vos décisions OUI ou NON encore en attente ;","tous les dossiers étudiés par Stan et toutes ses décisions ;","toutes les annotations de votre Corporate Developer qui améliorent Stan ;","toutes vos décisions et annotations qui améliorent Stan ;","toute lâactualité de votre marché et de vos concurrents â levées de fonds, rachats, news."]},stan:{eyeb:"Qui est Stan",claim:["Stan travaille.","Nous vérifions.","Vous décidez."],p:"Stan est notre IA. Derrière lui, une équipe qui a déployé du capital en seed, venture, growth, LBO et M&A.",logosLbl:"Là où notre équipe a déployé du capital",logosAlt:"Partech, Ardian, Google, Mirakl, leboncoin",pull:"Ce jugement, appliqué à votre marché, toutes les nuits.",closingA:"Personne dans votre équipe ne peut couvrir tout votre marché",closingB:" â non par manque de compétence, mais par manque de bande passante."},plans:{eyeb:"Les plans",h2:"Une couverture totale. Une vitesse de traitement sur-mesure.",lead:"Stan source et évalue votre marché chaque jour dans toutes les offres. En Essai, vous lancez les analyses à la demande. En Standard et Entreprise, Stan analyse automatiquement vos cibles retenues, avec votre Corporate Developer."},reprise:{h2:"Nous trouvons les entreprises que vous devriez suivre, financer ou racheter.",pA:"Stan est votre AI Corporate Developer. Indiquez votre site : il en déduit vos critères et vous rend vos dix premières cibles. Vous les validez de vive voix avec un Corporate Developer humain, qui apprend à raisonner comme vous et paramètre Stan pour en faire ",pB:"votre avantage concurrentiel décisif",pC:".",placeholder:"votresite.com",cta:"Découvrir mes cibles"},chaine:{eyeb:"La chaîne de valeur M&A, de la stratégie à la signature",h2:"Un seul moteur pour sourcer, trier, approcher et auditer",legend:{x:"Proplace peut sây substituer",keep:"Proplace le complète (connexion API, données, encadrement)",out:"Hors périmètre",actor:"Acteur"},cover:"Stan · votre corporate developer IA, de la thèse au suivi",brick:"Brique",today:"Aujourdâhui",problem:"Le problème",us:"Proplace",bricks:[{title:"Thèse & radars",obj:"Comprendre lâacquéreur, puis viser à trouver 100 % des cibles potentielles.",actors:[["Pitchbook","keep"],["Grata","keep"],["Crunchbase","keep"],["Dealroom","keep"],["Pappers","keep"],["Harmonic","keep"],["SourceScrub","keep"]],pb:"La donnée est inerte. Ces outils ignorent lâADN et la stratégie de lâacquéreur.",role:"Nous analysons **votre** entreprise pour écrire votre **stratégie dâacquisition ou dâinvestissement**. Elle pilote **22 moteur
1460s de sourcing**, complétés par vos outils connectés par **API** : aucune cible ne passe à côté.",tags:[["c","Complète : stratégie dâacquisition / dâinvestissement"],["r","Se substitue : aux mois de ciblage manuel"]]},{title:"Sourcing IA & verdict",obj:"Filtrer le bruit, analyser, décider.",actors:[["Banques dâaffaires","x"],["Boutiques M&A","x"],["Analystes internes","x"]],pb:"Lents, chers, biaisés. Ils couvrent 5 % du marché et apportent des deals déjà publics.",role:"Chaque nuit, Stan passe des milliers de sociétés au crible de votre thèse : **MATCH** ou **NO MATCH**, avec un **mémo éclair** justifié. Vous jugez, **Stan apprend** vos biais.",tags:[["r","Se substitue : aux mandats dâorigination, aux équipes dâanalystes mobilisées sur le tri"]]},{title:"Deal flow",obj:"Approcher les cibles validées et tenir le pipeline.",actors:[["Excel","x"],["Affinity","x"],["HubSpot","x"],["Salesforce","x"]],pb:"Le CRM est une coquille vide, chronophage à tenir à jour.",role:"Chaque dossier analysé arrive avec son **mémo** à la bonne étape de votre tunnel. Pour une cible validée, Stan **rédige lâapproche** du dirigeant et **suit les relances**.",tags:[["r","Se substitue : aux CRM passifs"]]},{title:"Due diligence & closing",obj:"Préparer la DD, les accords et le closing.",actors:[["Avocats dâaffaires","keep"],["Auditeurs Big 4","keep"],["Datasite","keep"]],pb:"Pièces, contrôles et réserves se dispersent entre les audits, la négociation et le comité.",role:"Stan rédige **NDA, LOI ou term sheet** depuis le dossier, selon votre profil : corporate, VC, growth ou LBO. Une **checklist** guide vos due diligences jusquâau **closing** ; chaque décision garde ses preuves, vous et vos conseils validez.",tags:[["c","Complète : avocats, auditeurs et comité"],["r","Se substitue : au suivi dispersé des vérifications"]]},{title:"Intégration et suivi (PMI)",obj:"Réussir les 100 premiers jours et suivre lâinvestissement.",actors:[["BCG","keep"],["Bain","keep"],["Ãquipes internes","keep"]],pb:"Les engagements du deal se perdent au passage aux équipes opérationnelles.",role:"Stan transforme les engagements du deal en **plan 100 jours** : actions, responsables, échéances. Vos **reportings** (board, LP) sâajoutent au mémo pour suivre lâécart avec la stratégie de départ.",tags:[["c","Complète : les équipes et conseils dâintégration"],["r","Se substitue : aux plans et reportings éparpillés"]]}],claim:"Toute lâintelligence de votre croissance externe tient sur un seul moteur, qui apprend de vos décisions."}},Ty={hero:{h1:"We find the companies you should track, fund or acquire.",leadA:"Stan is your ",leadB:"AI Corporate Developer",leadC:". Every night, he reviews every company on your market, keeps the ones that would create the most synergies with you, and discards the others â writing down why. You get ",leadD:"5 to 10 decisions a month",leadE:", each one backed by a detailed investment memo.",fieldLabel:"Start by giving us your website",placeholder:"yourcompany.com",cta:"See my targets",steps:["Stan derives your criteria and hands you your first ten targets.","You then validate them out loud with a human Corporate Developer: he understands how you reason, then tunes Stan so he reasons like you."],angles:["Acquisition","Minority stake","Simple watch"]},tri:{eyeb:"The sorting",h2a:"Stan detects, analyses and sorts.",h2b:"We verify.",steps:[{rail
1460:"Your market",n:"~3,000",label:"relevant companies, and new ones every day",w:100},{rail:"Stan",n:"~245",label:"screened every week, ~15 kept",w:56},{rail:"Us",n:"those 15",label:"analysed and decided on, with a memo",w:34},{rail:"You",n:"~1 to 3",label:"to decide on every week, with a detailed memo",w:20}],coverRail:"Coverage",coverValue:"~3 months",coverLabel:"to catch up on what exists â after that, the watch never stops",pA:"Stan eliminates ",pB:"94% of the work",pC:" before it reaches your desk. ",pD1:"That is not a promise: it is our MATCH rate measured across our first 10 clients",pD2:" â 6% of screened companies are kept, and you get a verdict and a memo for each of them.",pull:"No database does that â it gives you a list, it never tells you what it eliminated for you, nor what will fill your weaknesses and build on your strengths."},decision:{eyeb:"The decision",h2a:"You only decide on the excellent files.",h2b:"And your decision fits in two buttons.",yes:"YES",no:"NO",yesRoute:"goes to âValidatedâ: start due diligence",noRoute:"goes to discarded",p:"If you donât decide, your Corporate Developer groups the pending files and calls you on Tuesday or Thursday: he collects your view and uses it to improve Stan.",revueKicker:"Every Monday",revueTitle:"You receive your deal flow review, which includes:",rows:["all your YES or NO decisions still pending;","every file studied by Stan and all of his decisions;","all your Corporate Developerâs annotations that improve Stan;","all your decisions and annotations that improve Stan;","all the news of your market and your competitors â fundraises, acquisitions, news."]},stan:{eyeb:"Who is Stan",claim:["Stan works.","We check.","You decide."],p:"Stan is our AI. Behind him, a team that has deployed capital in seed, venture, growth, LBO and M&A.",logosLbl:"Where our team has deployed capital",logosAlt:"Partech, Ardian, Google, Mirakl, leboncoin",pull:"That judgment, applied to your market, every single night.",closingA:"Nobody on your team can cover your entire market",closingB:" â not for lack of skill, but for lack of bandwidth."},plans:{eyeb:"The plans",h2:"Total coverage. A processing speed tailored to you.",lead:"Stan sources and evaluates your market every day in every plan. In Trial, you launch analyses on demand. In Standard and Enterprise, Stan automatically analyses retained targets, with your Corporate Developer."},reprise:{h2:"We find the companies you should track, fund or acquire.",pA:"Stan is your AI Corporate Developer. Give us your site: he derives your criteria and hands you your first ten targets. You validate them out loud with a human Corporate Developer, who learns to reason like you and tunes Stan into ",pB:"your decisive competitive edge",pC:".",placeholder:"yourcompany.com",cta:"See my targets"},chaine:{eyeb:"The M&A value chain, from strategy to signing",h2:"One engine to source, screen, approach and audit",legend:{x:"Proplace can replace it",keep:"Proplace complements it (API connection, data, oversight)",out:"Out of scope",actor:"Player"},cover:"Stan · your AI corporate developer, from thesis to follow-up",brick:"Block",today:"Today",problem:"The problem",us:"Proplace",bricks:[{title:"Thesis & radars",obj:"Understand the acquirer, then aim to find 100% of potential targets.",actors:[["Pitchbook","keep"],["Grata","keep"],["Crunchbase","keep"],["Dealroom","keep"],["Pappers","keep"],["Harmonic","keep"],["SourceScrub","keep"]],pb:"The data is inert. These tools ignore the acquirerâs DNA and strategy.",role:"We analyse **your** company to write your **acquisition or investment strategy**. It drives **22 sourcing engines**, plus your tools connected by **API**: no target slips through.",tags:[["c","Complements: your acquisition / investment strategy"],["r","Replaces: months of manual targeting"]]},{title:"AI sourcing & verdict",obj:"Filter the noise, analyse, decide.",actors:[["Investment banks","x"],["M&A boutiques","x"],["In-house analysts","x"]],pb:"Slow, expensive, biased. They cover 5% of the market and bring deals that are already public.",role:"Every night, Stan screens thous
1460ands of companies against your thesis: **MATCH** or **NO MATCH**, with a justified **instant memo**. You judge, **Stan learns** your biases.",tags:[["r","Replaces: origination mandates, analyst teams tied up in screening"]]},{title:"Deal flow",obj:"Approach validated targets and keep the pipeline moving.",actors:[["Excel","x"],["Affinity","x"],["HubSpot","x"],["Salesforce","x"]],pb:"The CRM is an empty shell, time-consuming to keep up to date.",role:"Every analysed file lands at the right stage of your funnel with its **memo**. For a validated target, Stan **drafts the outreach** to the CEO and **tracks follow-ups**.",tags:[["r","Replaces: passive CRMs"]]},{title:"Due diligence & closing",obj:"Prepare DD, agreements and closing.",actors:[["Corporate lawyers","keep"],["Big 4 auditors","keep"],["Datasite","keep"]],pb:"Documents, checks and outstanding conditions get scattered across audits, negotiations and committee reviews.",role:"Stan drafts the **NDA, LOI or term sheet** from the file, tailored to your profile: corporate, VC, growth or LBO. A **checklist** guides your due diligence to **closing**; every decision keeps its evidence, and you and your advisers approve.",tags:[["c","Complements: lawyers, auditors and the committee"],["r","Replaces: scattered tracking of checks"]]},{title:"Integration & follow-up (PMI)",obj:"Deliver the first 100 days and monitor the investment.",actors:[["BCG","keep"],["Bain","keep"],["In-house teams","keep"]],pb:"Deal commitments get lost in the handover to operating teams.",role:"Stan turns the dealâs commitments into a **100-day plan**: actions, owners, deadlines. Your **reporting** (board, LPs) is added to the memo to track gaps against the original strategy.",tags:[["c","Complements:
1460integration teams and advisers"],["r","Replaces: scattered plans and reports"]]}],claim:"All the intelligence behind your external growth runs on a single engine that learns from your decisions."}},Zr={en:Ty,fr:_y},Uh=t=>t.trim().toLowerCase().replace(/^https?:\/\//,"").replace(/^www\./,"").replace(/\/.*$/,"").replace(/\s+/g,""),qy={fr:"Indiquez un site du type votresite.com",en:"Enter a site like yoursite.com"};function ta({placeholder:t,cta:n}){const{lang:r}=ae(),i=m.useRef(null),[s,a]=m.useState(""),[o,c]=m.useState([]),[l,d]=m.useState(!1),[p,u]=m.useState(!1),[g,f]=m.useState(!1),[L,v]=m.useState(""),[y,h]=m.useState(Tr),b=w=>{a(w),u(!1);const S=Uh(w);if(S.length<2||S.includes(".")){c([]);return}c([".fr",".com",".io"].map(E=>S+E))},x=w=>{var S;a(w),c([]),u(!1),(S=i.current)==null||S.focus()},A=()=>{var S;const w=Uh(s);if(!w||!w.includes(".")){(S=i.current)==null||S.focus(),d(!0),u(!0),window.setTimeout(()=>d(!1),450);return}v(w),u(!1);try{const E=new URL(window.location.href);E.searchParams.set("site",w),window.history.replaceState(null,"",E)}catch{}f(!0)};return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"ur",children:[e.jsx("span",{className:`uf${p?" uf-err":""}`,children:e.jsx("input",{ref:i,value:s,placeholder:t,autoComplete:"off",spellCheck:!1,className:l?"shake":void 0,"aria-invalid":p||void 0,onChange:w=>b(w.target.value),onKeyDown:w=>{w.key==="Enter"&&A()}})}),e.jsx("button",{type:"button",className:"ub",onClick:A,children:n})]}),p&&e.jsx("p",{className:"uf-err-msg",role:"alert",children:qy[r]}),e.jsx("div",{className:"usug",children:o.map(w=>e.jsx("button",{type:"button",className:"usg",onClick:()=>x(w),children:w},w))}),e.jsx(Np,{lang:r,variant:"hero",value:y,onChange:h}),g&&e.jsx(Qr,{onClose:()=>f(!1),initialWebsite:L,initialExtras:y})]})}const Ux="h3-start";function Fy(){const t=document.getElementById(Ux);if(!t)return;t.scrollIntoView({behavior:"smooth",block:"center"});const n=t.querySelector("input");window.setTimeout(()=>{try{n==null||n.focus({preventScroll:!0})}catch{}},420)}function Vx(){const{lang:t}=ae(),n=Zr[t].hero;return e.jsx("section",{className:"h3s h3-hero",children:e.jsxs("div",{className:"h3-wrap",children:[e.jsx("h1",{className:"h3-h1",children:n.h1}),e.jsxs("p",{className:"h3-lead",children:[n.leadA,e.jsx("b",{children:n.leadB}),n.leadC,e.jsx("b",{children:n.leadD}),n.leadE]}),e.jsxs("div",{className:"h3-field",id:Ux,children:[e.jsx("div",{className:"h3-fieldlbl",children:n.fieldLabel}),e.jsx(ta,{placeholder:n.placeholder,cta:n.cta})]}),e.jsx("div",{className:"h3-steps",children:n.steps.map((r,i)=>e.jsxs("div",{className:"h3-step",children:[e.jsx("b",{children:i+1}),e.jsx("p",{children:r})]},r))}),e.jsx("div",{className:"h3-angles",children:n.angles.map(r=>e.jsx("span",{className:"h3-angle",children:r},r))}),e.jsxs("a",{className:"pp-tutorial-hero-link",href:"#tutoriel",children:[t==="fr"?"Voir le cockpit Standard en 10 étapes":"Explore the Standard cockpit in 10 chapters",e.jsx("span",{"aria-hidden":"true",children:" â"})]})]})})}function Hx(){const{lang:t}=ae(),n=Zr[t].tri;return e.jsx("section",{className:"h3s",children:e.jsxs("div",{className:"h3-wrap",children:[e.jsx("div",{className:"h3-eyeb",children:n.eyeb}),e.jsxs("h2",{className:"h3-h2",children:[e.jsx("span",{className:"soft",children:n.h2a})," ",n.h2b]}),e.jsxs("div",{className:"h3-funnel",children:[n.steps.map(r=>e.jsxs("div",{className:"h3-fr",children:[e.jsx("div",{className:"h3-frail",children:r.rail}),e.jsx("div",{className:"h3-fbar",style:{width:`${r.w}%`},children:r.n}),e.jsx("div",{className:"h3-flabel",children:r.label})]},r.n)),e.jsxs("div",{className:"h3-fcover",children:[e.jsx("div",{className:"h3-frail",children:n.coverRail}),e.jsx("div",{className:"h3-fcval",children:e.jsx("b",{children:n.coverValue})}),e.jsx("div",{className:"h3-flabel",children:n.coverLabel})]})]}),e.jsxs("p",{className:"h3-p h3-tri-p",children:[n.pA,e.jsx("b",{children:n.pB}),n.pC]}),e.jsxs("p",{className:"h3-tri-note",children:[n.pD1,n.pD2]}),e.jsx("p",{className:"h3-pull h3-tri-pull",children:n.pull})]})})}const Yx={fill:"none",stroke:"currentColor",strokeWidth:3.2,strokeLinecap:"round",strokeLinejoin:"round"},Oy=()=>e.jsx("svg",{viewBox:"0 0 24 24",width:"19",height:"19","aria-hidden":"true",...Yx,children:e.jsx("path",{d:"M4 12.6 9.4 18 20 6.6"})}),My=()=>e.jsx("svg",{viewBox:"0 0 24 24",width:"19",height:"19","aria-hidden":"true",...Yx,children:e.jsx("path",{d:"M6.5 6.5 17.5 17.5M17.5 6.5 6.5 17.5"})});function Gx(){const{lang:t}=ae(),n=Zr[t].decision;return e.jsx("section",{className:"h3s",children:e.jsxs("div",{className:"h3-wrap",children:[e.jsx("div",{className:"h3-eyeb",children:n.eyeb}),e.jsxs("h2",{className:"h3-h2",children:[e.jsx("span",{className:"soft",children:n.h2a})," ",n.h2b]}),e.jsxs("div",{className:"h3-dec",children:[e.jsxs("div",{className:"h3-card",children:[e.jsxs("div",{className:"h3-yn","aria-hidden":"true",children:[e.jsxs("div",{className:"h3-btn y",children:[e.jsx(Oy,{}),n.yes]}),e.jsxs("div",{className:"h3-btn n",children:[e.jsx(My,{}),n.no]})]}),e.jsxs("div",{className:"h3-route",children:[e.jsx("span",{children:n.yesRoute}),e.jsx("span",{children:n.noRoute})]}),e.jsx("p",{className:"h3-decnote",children:n.p}
1460)]}),e.jsxs("div",{className:"h3-card",children:[e.jsxs("div",{className:"h3-revh",children:[e.jsx("span",{className:"h3-revk",children:n.revueKicker}),e.jsx("span",{className:"h3-revt",children:n.revueTitle})]}),n.rows.map(r=>e.jsx("p",{className:"h3-revr",children:r},r))]})]})]})})}function Ry({text:t}){return e.jsx(e.Fragment,{children:t.split("**").map((n,r)=>r%2?e.jsx("b",{children:n},r):e.jsx(m.Fragment,{children:n},r))})}function Py(){const{lang:t}=ae(),n=Zr[t].chaine;return e.jsx("section",{className:"h3s","aria-labelledby":"h3-ch-title",children:e.jsxs("div",{className:"h3-wrap",children:[e.jsx("div",{className:"h3-eyeb",children:n.eyeb}),e.jsx("h2",{className:"h3-h2 h3-ch-h2",id:"h3-ch-title",children:n.h2}),e.jsxs("div",{className:"h3-ch-legend",children:[e.jsxs("span",{children:[e.jsx("span",{className:"h3-ch-chip x",children:n.legend.actor}),n.legend.x]}),e.jsxs("span",{children:[e.jsx("span",{className:"h3-ch-chip keep",children:n.legend.actor}),n.legend.keep]}),n.bricks.some(r=>r.actors.some(([,i])=>i==="out"))&&e.jsxs("span",{children:[e.jsx("span",{className:"h3-ch-chip",children:n.legend.actor}),n.legend.out]})]}),e.jsx("div",{className:"h3-ch-cover","aria-hidden":"true",children:e.jsxs("div",{className:"h3-ch-band",children:[e.jsx("i",{className:"l"}),e.jsx("b",{children:n.cover}),e.jsx("i",{className:"r"})]})}),e.jsx("div",{className:"h3-ch",children:n.bricks.map((r,i)=>{const s=r.tags.every(([a])=>a==="o");return e.jsxs("article",{className:"h3-ch-brick"+(s?" out":""),children:[e.jsxs("div",{className:"h3-ch-bh",children:[e.jsxs("div",{className:"h3-ch-num",children:[n.brick," ",i+1]}),e.jsx("h3",{children:r.title}),e.jsx("p",{className:"h3-ch-obj",children:r.obj})]}),e.jsxs("div",{className:"h3-ch-sec",children:[e.jsx("div",{className:"h3-ch-lab",children:n.today}),e.jsx("div",{className:"h3-ch-chips",children:r.actors.map(([a,o])=>e.jsx("span",{className:"h3-ch-chip"+(o==="out"?"":" "+o),children:a},a))})]}),e.jsxs("div",{className:"h3-ch-sec",children:[e.jsx("div",{className:"h3-ch-lab",children:n.problem}),e.jsx("p",{className:"h3-ch-pb",children:r.pb})]}),e.jsxs("div",{className:"h3-ch-sec",children:[e.jsx("div",{className:"h3-ch-lab",children:n.us}),e.jsx("div",{className:"h3-ch-role",children:r.role.split(` 1461 1462`).map((a,o)=>e.jsx("p",{children:e.jsx(Ry,{text:a})},o))}),e.jsx("div",{className:"h3-ch-tags",children:r.tags.map(([a,o])=>e.jsx("span",{className:"h3-ch-tag "+a,children:o},o))})]})]},r.title)})}),e.jsx("p",{className:"h3-ch-claim",children:n.claim})]})})}function Wx(){const{lang:t}=ae(),n=Zr[t].stan;return e.jsx("section",{className:"h3s tint center",children:e.jsxs("div",{className:"h3-wrap",children:[e.jsx("div",{className:"h3-eyeb",children:n.eyeb}),e.jsx("h2",{className:"h3-h2 h3-trip",children:n.claim.map(r=>e.jsx("span",{children:r},r))}),e.jsx("p",{className:"h3-lead h3-stan-p",children:n.p}),e.jsxs("div",{className:"h3-logoswrap",children:[e.jsx("div",{className:"h3-logoslbl",children:n.logosLbl}),e.jsx("img",{className:"h3-logos",src:"/trust-logos.png",alt:n.logosAlt,loading:"lazy"})]}),e.jsx("p",{className:"h3-pull h3-stan-pull",children:n.pull}),e.jsxs("p",{className:"h3-closing",children:[e.jsx("b",{children:n.closingA}),n.closingB]})]})})}const Iy={cards:[{name:"Essai",amount:"0 â¬",per:"Sans carte bancaire, sans engagement",gauge:{label:"ANALYSE DE STAN SUR LES CIBLES RETENUES",width:"8%",value:"à la demande"},li:[[{t:"Donnez votre site : Stan étudie toute votre présence en ligne, déduit vos critères et lance le sourcing"}],[{t:"Votre marché est criblé sur autant dâangles que Stan vous en suggère, pour un deal flow entièrement personnalisé"}],[{t:"Stan source et étudie chaque jour des centaines de sociétés afin de les retenir ou les écarter"}],[{t:"Vos premières cibles, "},{t:"retenues",k:"vok"},{t:" ou "},{t:"écartées",k:"vno"},{t:", avec une évaluation précise"}],[{t:"3 crédits offerts chaque jour pour lancer lâanalyse dâune cible à la demande : mémo éclair, 1 crédit ; mémo détaillé, 3 crédits"}]],cta:"Découvrir mes cibles",action:"trial"},{name:"Standard",amount:"25 000 â¬",sYear:"/ an",per:"Facture annuelle, virement bancaire",fine:{pre:"Abonnement annuel â ",b:"25 000 ⬠HT",l2:"virement sur facture Stripe (IBAN)",l3:"reconduction automatique chaque année · tarifs HT"},gauge:{label:"STAN ANALYSE TOUTES LES CIBLES RETENUES DANS UN DÃLAI MAXIMUM DE",width:"60%",value:"7 jours"},li:[[{t:"Tout lâEssai, plus :",k:"b"}],[{t:"Chaque jour, Stan analyse automatiquement une partie de vos cibles retenues et rend un verdict pour chacune"}],[{t:"Stan lance des mémos sur toutes celles retenues et donne son verdict argumenté sous 7 jours"}],[{t:"Votre Corporate Developer apprend votre raisonnement et règle Stan afin quâil raisonne comme vous"}],[{t:"Votre Corporate Developer les vérifie et lance les mémos détaillés sur toutes les meilleures"}],[{t:"Vous tranchez OUI (lancer une due diligence) ou NON sur ces meilleures, mémo détaillé à lâappui"}],[{t:"Chaque OUI débloque une checklist de due diligence qui vous accompagne jusquâau closing"}],[{t:"Chaque lundi, une revue de deal flow complète par email : les décisions à trancher quâil nous manque, les décisions autonomes de Stan, les annotations de votre Corporate Developer, les améliorations de Stan, lâactualité qui répond à vos enjeux"}
1462]],cta:"Planifier votre appel stratégique",action:"rdv"},{name:"Entreprise",amount:"50 000 â¬",sYear:"/ an",per:"Facture annuelle, virement bancaire",fine:{pre:"Abonnement annuel â ",b:"50 000 ⬠HT",l2:"virement sur facture Stripe (IBAN)",l3:"reconduction automatique chaque année · tarifs HT"},gauge:{label:"STAN ANALYSE TOUTES LES CIBLES RETENUES DANS UN DÃLAI MAXIMUM DE",width:"80%",value:"24 heures"},li:[[{t:"Tout le Standard, plus :",k:"b"}],[{t:"Stan lance des mémos sur toutes celles retenues et donne son verdict argumenté sous 24 heures"}],[{t:"Aide à lâintégration de Stan dans vos workflows : ajouter les cibles à votre CRM, évaluer vos dossiers actuels en masse"}],[{t:"Aide à la personnalisation parfaite : mémos, séquences dâapproche aux CEOâ¦"}],[{t:"Priorité de découverte : quand une société correspond à plusieurs de nos clients, vous la voyez en premier"}]],cta:"Planifier votre appel stratégique",action:"rdv"}],under:{ment:"Tarifs HT. Reconduction tacite à lâissue des 12 mois, résiliable avec 3 mois de préavis. Indexation annuelle applicable."}},Dy={cards:[{name:"Trial",amount:"0 â¬",per:"No credit card, no commitment",gauge:{label:"STANâS ANALYSIS OF RETAINED TARGETS",width:"8%",value:"on demand"},li:[[{t:"Give your site: Stan studies your entire online presence, derives your criteria and starts the sourcing"}],[{t:"Your market screened on as many angles as Stan suggests, for a fully personalised deal flow"}],[{t:"Stan sources and studies hundreds of companies every day, to keep or discard them"}],[{t:"Your first targets, "},{t:"kept",k:"vok"},{t:" or "},{t:"discarded",k:"vno"},{t:", with a precise evaluation"}],[{t:"3 free credits every day to analyse a target on demand: instant memo, 1 credit; detailed memo, 3 credits"}]],cta:"See my targets",action:"trial"},{name:"Standard",amount:"25 000 â¬",sYear:"/ year",per:"Annual invoice, bank transfer",fine:{pre:"Yearly subscription â ",b:"â¬25,000 excl. VAT",l2:"wire transfer on a Stripe invoice (IBAN)",l3:"automatic renewal each year · prices excl. VAT"},gauge:{label:"STAN ANALYSES ALL RETAINED TARGETS WITHIN A MAXIMUM OF",width:"60%",value:"7 days"},li:[[{t:"Everything in Trial, plus:",k:"b"}],[{t:"Every day, Stan automatically analyses a portion of your retained targets and gives a verdict on each"}],[{t:"Stan writes a memo on every kept company and gives its reasoned verdict within 7 days"}],[{t:"Your Corporate Developer learns how you reason and tunes Stan to reason like you"}],[{t:"Your Corporate Developer checks them and launches the detailed memos on the very best ones"}],[{t:"You decide YES (start due diligence) or NO on those best ones, with a detailed memo"}],[{t:"Every YES unlocks a due diligence checklist to guide you through to closing"}],[{t:"Every Monday, a full deal flow review by email: the decisions we are still missing from you, Stanâs autonomous decisions, your Corporate Developerâs annotations, Stanâs improvements, and the news that speaks to your priorities"}]],cta:"Book your strategy call",action:"rdv"},{name:"Enterprise",amount:"50 000 â¬",sYear:"/ year",per:"Annual invoice, bank transfer",fine:{pre:"Yearly subscription â ",b:"â¬50,000 excl. VAT",l2:"wire transfer on a Stripe invoice (IBAN)",l3:"automatic renewal each year · prices excl. VAT"},gauge:{label:"STAN ANALYSES ALL RETAINED TARGETS WITHIN A MAXIMUM OF",width:"80%",value:"24 hours"},li:[[{t:"Everything in Standard, plus:",k:"b"}],[{t:"Stan writes a memo on every kept company and gives its reasoned verdict within 24 hours"}],[{t:"Help plugging Stan into your workflows: push targets to your CRM, evaluate your current files in bulk"}],[{t:"Help with perfect personalisation: memos, outreach sequences to CEOsâ¦"}],[{t:"Discovery priority: when a company matches several of our clients, you see it first"}]],cta:"Book your strategy call",action:"rdv"}],under:{ment:"Prices excl. VAT. Tacit renewal at the end of the 12 months, cancellable with 3 monthsâ notice. Annual indexation applicable."}},zy={en:Dy,fr:Iy},By={standard:{year:"25 000 â¬"},enterprise:{year:"50 000 â¬"}};function Uy({seg:t}){return t.k==="b"?e.jsx("b",{children:t.t}):t.k?e.jsx("span",{className:t.k,children:t.t}):e.jsx(e.Fragment,{children:t.t})}function Vy(t){const n=t.toLowerCase();return n.includes("essai")||n.includes("trial")||n==="free"?"free":n.includes("standard")?"standard":n.includes("entreprise")||n.includes("enterprise")?"enterprise":null}function Vh({plan:t,busy:n,fr:r,sepa:i,onClick:s,onYearly:a}){const o=By[t],c=t==="standard"?"Standard":r?"Entreprise":"Enterprise",l=t==="standard"?"std":"ent";return e.jsxs("div",{className:"pay-wrap",children:[e.jsxs("button",{type:"button",className:`pay ${l}`,disabled:n,onClick:a||s,children:[e.jsx("em",{children:n?r?"Ouvertureâ¦":"Openingâ¦":c}),e.jsx("span",{children:r?"Abonnement annuel · virement":"Yearly subscription · bank transfer"}),e.jsx("strong",{children:r?`Payer ${o.year} â`:`Pay ${o.year} â`})]}),e.jsx("p",{className:"sepa",children:r?"Facture annuelle Stripe, IBAN à créditer. Une nouvelle facture part automatiquement chaque année."
1462:"Yearly Stripe invoice with the IBAN to credit. A new invoice is issued automatically each year."})]})}function hl({context:t,onTrialCta:n,onRdvCta:r,copy:i,currentPlan:s,accountExtras:a}){const{lang:o}=ae(),c=o==="fr",l=(i??zy)[o],d=c?"Votre offre":"Your plan",p=c?"Ãchanger avec Alexandre":"Talk with Alexandre",u=c?"Carte bancaire ou prélèvement SEPA automatique.":"Card or automatic SEPA direct debit.";return e.jsxs("div",{className:"prc2","data-context":t,children:[e.jsx("style",{children:Hy}),e.jsx("div",{className:"prices",children:l.cards.map(g=>{const f=Vy(g.name),L=!!(s&&f&&s===f),v=t==="account"&&f==="standard"&&s!=="standard"&&s!=="enterprise"&&!!(a!=null&&a.onPay),y=t==="account"&&f==="enterprise"&&s!=="enterprise"&&!!(a!=null&&a.onPay),h=t==="account"&&!(a!=null&&a.hideRdv)&&(f==="standard"||f==="enterprise"),b=t==="account"&&f==="free"&&s==="free"&&(a==null?void 0:a.packs);return e.jsxs("div",{className:(g.hi||L?"price hi":"price")+(L?" current":""),children:[(L?d:g.badge)&&e.jsx("span",{className:"badge",children:L?d:g.badge}),e.jsxs("div",{className:"phead",children:[e.jsx("div",{className:"t",children:g.name}),e.jsxs("div",{className:"p",children:[g.amount,g.sYear?e.jsxs(e.Fragment,{children:[" ",e.jsx("s",{children:g.sYear})]}):null]}),e.jsx("div",{className:"per",children:g.per}),g.fine&&e.jsxs("div",{className:"fine",children:[g.fine.pre,e.jsx("b",{children:g.fine.b}),e.jsx("br",{}),g.fine.l2,e.jsx("br",{}),g.fine.l3]})]}),e.jsxs("div",{className:"q2",children:[e.jsx("span",{className:"q2l",children:g.gauge.label}),e.jsx("span",{className:"q2b",children:e.jsx("i",{style:{width:g.gauge.width}})}),e.jsx("b",{children:g.gauge.value}),g.gauge.note&&e.jsx("span",{className:"q2t",children:g.gauge.note})]}),e.jsx("ul",{children:g.li.map(x=>e.jsx("li",{children:x.map((A,w)=>e.jsx(Uy,{seg:A},w))},x.map(A=>A.t).join("")))}),t==="account"?e.jsxs("div",{className:"acct-cta",children:[b,v&&e.jsx(Vh,{plan:"standard",busy:!!(a!=null&&a.payBusy),fr:c,sepa:u,onClick:()=>{var x;return(x=a==null?void 0:a.onPay)==null?void 0:x.call(a,"standard")},onYearly:()=>{var x;return(x=a==null?void 0:a.onPay)==null?void 0:x.call(a,"standard","year")}}),y&&e.jsx(Vh,{plan:"enterprise",busy:!!(a!=null&&a.payBusy),fr:c,sepa:u,onClick:()=>{var x;return(x=a==null?void 0:a.onPay)==null?void 0:x.call(a,"enterprise")},onYearly:()=>{var x;return(x=a==null?void 0:a.onPay)==null?void 0:x.call(a,"enterprise","year")}}),h&&e.jsx("button",{type:"button",className:"rdv",onClick:r,children:p}),f==="free"&&(a==null?void 0:a.creditsLine)&&e.jsxs("p",{className:"cred-foot",children:[a.creditsLine,a.creditsSub?e.jsx("span",{children:a.creditsSub}):null]})]}):e.jsx("button",{onClick:g.action==="trial"?n:r,children:g.cta})]},g.name)})}),e.jsxs("div",{className:"under",children:[l.under.b&&e.jsx("b",{children:l.under.b}),l.under.rest,e.jsx("div",{className:"ment",children:l.under.ment})]})]})}const Hy=` 1463/* Autonomie hors .home2 (page Abonnement) : les variables du proto redéclarées 1464 sur .prc2 â mêmes valeurs que le scope .home2, donc sans effet quand la 1465 grille est montée dans la home. */ 1466.prc2{ 1467 --brand:var(--pp-green); --brand-d:var(--pp-green-h); --brand-l:var(--pp-green-bg); --red:var(--pp-red); 1468 --panel:var(--pp-bg); --panel2:var(--pp-bg-zone); --panel3:var(--pp-bg-page); 1469 --line:var(--pp-line); --line2:var(--pp-line-dash); 1470 --ink:var(--pp-ink); --muted:var(--pp-ink-2); --dim:var(--pp-ink-4); 1471 --r:10px; --rs:8px; --ra:var(--pp-r-s); --rb:var(--pp-r-l); 1472 --mono:var(--pp-body); 1473 --body:var(--pp-body); 1474 font-family:var(--body);line-height:1.45;color:var(--ink); 1475} 1476.prc2,.prc2 *{box-sizing:border-box} 1477.prc2 button{font-family:inherit} 1478/* ---- tokens du proto (l.92-104), re-préfixés .prc2, ordre source préservé ---- */ 1479.prc2 .prices{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px;margin-top:26px} 1480.prc2 .price{background:var(--panel);border:1px solid var(--line);border-radius:var(--rb);padding:22px} 1481.prc2 .price.hi{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-l)} 1482.prc2 .price .t{font-size:15px;font-weight:700} 1483.prc2 .price .p{font-size:26px;font-weight:800;letter-spacing:-.02em;margin:6px 0 3px} 1484.prc2 .price .p s{text-decoration:none;font-size:12px;font-weight:600;color:var(--muted)} 1485.prc2 .price .d{font-size:13px;color:var(--muted);margin-bottom:14px} 1486.prc2 .price ul{list-style:none;margin:0 0 16px;padding:0} 1487.prc2 .price li{position:relative;padding-left:20px;font-size:13px;color:var(--muted);margin-bottom:8px;line-height:1.45} 1488.prc2 .price li::before{content:"â";position:absolute;
1488left:0;color:var(--brand);font-weight:700} 1489.prc2 .price button{width:100%;border:0;border-radius:var(--ra);padding:12px;font-size:13.5px;font-weight:700;cursor:pointer; 1490 background:var(--ink);color:#fff} 1491.prc2 .price.hi button{background:var(--brand)} 1492/* ---- (l.128-138) ---- */ 1493.prc2 .price{position:relative} 1494.prc2 .price .badge{position:absolute;top:-11px;left:22px;background:var(--brand);color:#fff;border-radius:99px; 1495 padding:3px 11px;font-size:10.5px;font-weight:700} 1496.prc2 .price .p s{text-decoration:none;font-size:13px;font-weight:600;color:var(--muted)} 1497.prc2 .price .per{font-size:12.5px;color:var(--muted);margin-bottom:8px} 1498.prc2 .price .fine{font-size:11.5px;color:var(--dim);line-height:1.6;border-left:2px solid var(--line); 1499 padding-left:10px;margin-bottom:12px} 1500.prc2 .price .fine b{color:var(--ink)} 1501.prc2 .under{margin-top:22px;background:var(--panel);border:1px solid var(--line);border-radius:var(--rb);padding:16px 18px;font-size:13.5px;color:var(--muted)} 1502.prc2 .under b{color:var(--ink)} 1503.prc2 .under .ment{font-size:11.5px;color:var(--dim);margin-top:10px} 1504/* ---- (l.1471-1479) ---- */ 1505.prc2 .prices{gap:20px;margin-top:30px} 1506.prc2 .price{padding:26px} 1507.prc2 .price .t{font-size:16px} 1508.prc2 .price .p{font-size:30px;margin:8px 0 3px} 1509.prc2 .price li{font-size:13.5px;margin-bottom:9px} 1510.prc2 .price .queue{background:var(--panel2);border-radius:var(--r);padding:10px 12px;font-size:12.5px; 1511 color:var(--muted);margin:12px 0 14px;border-left:3px solid var(--line2)} 1512.prc2 .price .queue b{color:var(--ink)} 1513.prc2 .price.hi .queue{border-left-color:var(--brand)} 1514/* ---- file d'attente, en jauge (l.1541-1546) ---- */ 1515.prc2 .q2{background:var(--panel2);border:1px solid var(--line);border-radius:var(--r);padding:11px 13px;margin-bottom:14px} 1516.prc2 .q2l{display:block;font-family:var(--mono);font-size:12px;color:var(--dim);margin-bottom:7px;font-weight:600;font-variant-numeric:tabular-nums} 1517.prc2 .q2b{display:block;height:6px;background:var(--panel3);border-radius:99px;overflow:hidden;margin-bottom:8px} 1518.prc2 .q2b i{display:block;height:100%;background:var(--brand);border-radius:99px} 1519.prc2 .q2 b{font-size:14.5px;font-weight:700;letter-spacing:-.01em} 1520.prc2 .q2t{display:block;font-size:12px;color:var(--muted);margin-top:2px} 1521/* ---- verdicts en pastilles (l.1979-1982) ---- */ 1522.prc2 .vok,.prc2 .vno{display:inline-block;font-size:10px;font-weight:700;border-radius:var(--rs); 1523 padding:2px 7px;white-space:nowrap;vertical-align:1px;line-height:1.3} 1524.prc2 .vok{background:var(--brand);color:#fff} 1525.prc2 .vno{background:var(--red);color:#fff} 1526.prc2 .acct-cta{display:flex;flex-direction:column;gap:10px} 1527.prc2 .pay-wrap{display:flex;flex-direction:column;gap:6px} 1528.prc2 .pay{display:flex;flex-direction:column;align-items:flex-start;gap:3px;width:100%; 1529 border:0;border-radius:var(--ra);padding:14px 16px;cursor:pointer;text-align:left;color:#fff} 1530.prc2 .pay.std{background:#0F1D33} 1531.prc2 .pay.ent{background:#0E8A44} 1532.prc2 .pay.year{background:#fff!important;color:var(--ink)!important;border:1px solid var(--line)!important} 1533.prc2 .pay.year.std{border-color:#0F1D33!important} 1534.prc2 .pay.year.ent{border-color:#0E8A44!important} 1535.prc2 .pay.year strong{border-top-color:rgba(15,29,51,.16)} 1536.prc2 .pay:disabled{opacity:.55;cursor:progress} 1537.prc2 .pay em{font-style:normal;font-size:11.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:.9} 1538.prc2 .pay span{font-size:12.5px;opacity:.88;font-weight:500} 1539.prc2 .pay strong{display:block;margin-top:6px;padding-top:8px;border-top:1px solid rgba(255,255,255,.22); 1540 font-size:14.5px;font-weight:800} 1541.prc2 .sepa{margin:0;font-size:11.5px;color:var(--muted);line-height:1.45} 1542.prc2 .rdv{width:100%;border:1px solid var(--line)!important;border-radius:var(--ra);padding:11px 14px; 1543 font-size:13px;font-weight:650;cursor:pointer;background:#fff!important;color:var(--ink)!important; 1544 line-height:1.35} 1545.prc2 .rdv:hover{border-color:var(--brand)!important;background:#F3FBF6!important} 1546.prc2 .ppc-packs{margin:0} 1547.prc2 .ppc-h3{margin:0 0 6px;font-size:13.5px;font-weight:700;color:var(--ink)} 1548.prc2 .ppc-sub{margin:0 0 10px;font-size:12.5px;line-height:1.5;color:var(--muted)} 1549.prc2 .ppc-pack-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px} 1550.prc2 .ppc-pack{border:1px solid var(--line);border-radius:10px;padding:10px 12px;display:flex; 1551 flex-direction:column;gap:4px;background:var(--panel2)} 1552.prc2 .ppc-pack strong{font-size:13px} 1553.prc2 .ppc-pack span{font-size:12.5px;color:var(--muted)} 1554.prc2 .ppc-pack-btn{margin-top:4px;border:0;border-radius:8px;padding:8px 10px;background:var(--ink);color:#fff; 1555 font-size:12.5px;font-weight:700;cursor:pointer} 1556.prc2 .ppc-pack-btn:hover{opacity:.9} 1557.prc2 .cred-foot{margin:8px 0 0;font-size:13px;font-weight:650;color:var(--ink);line-height:1.4;text-align:left}
1558.prc2 .cred-foot span{display:block;margin-top:2px;font-size:12px;font-weight:600;color:var(--brand)} 1559`;function Qx(){const{lang:t}=ae(),{openRdv:n}=pl(),r=Zr[t].plans;return e.jsx("section",{className:"h3s center",id:"tarifs",children:e.jsxs("div",{className:"h3-wrap",children:[e.jsx("div",{className:"h3-eyeb",children:r.eyeb}),e.jsx("h2",{className:"h3-h2",children:r.h2}),e.jsx("p",{className:"h3-lead h3-plans-lead",children:r.lead}),e.jsx(hl,{context:"home",onTrialCta:Fy,onRdvCta:()=>n()})]})})}function Zx(){const{lang:t}=ae(),n=Zr[t].reprise;return e.jsx("section",{className:"h3s h3-reprise",children:e.jsx("div",{className:"h3-wrap",children:e.jsxs("div",{className:"h3-repcard",children:[e.jsx("h2",{className:"h3-h2",children:n.h2}),e.jsxs("p",{className:"h3-lead",children:[n.pA,e.jsx("b",{children:n.pB}),n.pC]}),e.jsx("div",{className:"h3-field",children:e.jsx(ta,{placeholder:n.placeholder,cta:n.cta})})]})})})}const le=(t,n,r,i,s)=>({id:t,scene:n,target:r,fr:i,en:s}),Hh=[{id:"cockpit",fr:["Votre cockpit","Lâaperçu privé, de A à Z","Lâaperçu privé résume le fonctionnement du cockpit en six blocs : votre hypothèse, vos angles, le crible, les moteurs, le mémo sur mesure et votre Corporate Developer. La visite zone par zone vient ensuite."],en:["Your cockpit","The private preview, from A to Z","The private preview sums up how the cockpit works in six blocks: your hypothesis, your angles, the screen, the engines, the tailored memo and your Corporate Developer. The zone-by-zone tour follows."],steps:[le("preview-hypothesis","welcome","preview",["Notre hypothèse sur votre stratégie","Tout part de votre entreprise. Stan a étudié le site, les offres dâemploi et la presse dâAsteria, puis a écrit ce quâil pense que vous cherchez : élargir vos services B2B récurrents, en France et en Europe. Si lâhypothèse est fausse, tout le reste lâest aussi : câest le premier paragraphe à relire.","Ce paragraphe est lâhypothèse écrite pour Asteria. Suivant : vos angles dâacquisition."],["Our hypothesis about your strategy","Everything starts from your company. Stan studied Asteriaâs website, job postings and press coverage, then wrote down what he believes you are looking for: broader recurring B2B services in France and Europe. If the hypothesis is wrong, so is everything else: it is the first paragraph to review.","This paragraph is the hypothesis written for Asteria. Next: your acquisition angles."]),le("preview-angles","criteria","preview",["Vos angles dâacquisition","La recherche est découpée en quatre familles de cibles : cybersécurité managée, infogérance, conformité, services numériques. Chaque angle dit pourquoi il compte pour Asteria, ce quâon y cherche et ce quâon écarte. Chacun devient des requêtes concrètes pour les moteurs.","Le premier angle est déplié. Suivant : ce qui fait retenir une société."],["Your acquisition angles","The search is split into four families of targets: managed cybersecurity, managed IT, compliance and digital services. Each angle states why it matters to Asteria, what to look for and what to rule out. Each becomes concrete queries for the engines.","The first angle is open. Next: what it takes to be kept."]),le("preview-criteria","criteria","preview",["Ce qui fait retenir une société","Le crible tient en quatre points, A, B, C et D : lâactivité, lâangle, la géographie, le profil. Stan ne retient une société que si elle les coche tous ; sinon il lâécarte et écrit pourquoi. Vous retrouverez cette grille, remplie, dans lâévaluation de chaque dossier.","Ces quatre points décident de chaque société. Suivant : les moteurs de sourcing."],["What it takes to be kept","The screen fits in four points, A, B, C and D: business, angle, geography and profile. Stan keeps a company only if it ticks all four; otherwise he rules it out and writes why. You will find this grid, filled in, in every fileâs evaluation.","These four points decide every company. Next: the sourcing engines."]),le("preview-engines","sourcing","preview",["Les moteurs de sourcing","Chaque matin, Stan nâinterroge pas le web en vrac : il lance les moteurs branchés sur votre thèse, chacun avec ses propres requêtes. Les moteurs dépliés montrent ce quâils cherchent et combien de sociétés ils ont trouvées cette semaine.","Les premiers moteurs sont dépliés. Suivant : le mémo sur mesure."],["The sourcing engines","Every morning, Stan does not search the web at random: he runs the engines wired to your thesis, each with its own queries. The open engines show what they search for and how many companies they found this week.","The first engines are open. Next: the tailored memo."]),le("preview-memo","memo","preview",["Ce que la thèse fabrique : le mémo sur mesure","Quand une société passe le crible, Stan rédige un mémo dâinvestissement calé sur votre thèse, pas une fiche générique : vos angles, vos seuils financiers, vos synergies. Il se conclut par un verdict : CALL, CONSIDER, MONITOR ou PASS.","Les sections du mémo et ses quatre verdicts sont dépliés. Suivant : votre Corporate Developer."],["What the thesis produces: the tailored memo","When a company passes the screen, Stan writes an investment memo built on your thesis, not a generic profile: your angles, your financial thresholds, your synergies. It ends with a verdict: CALL, CONSIDER, MONITOR or PASS.","The memo sections and its four verdicts are open. Next: your Corporate Developer."]),le("preview-human","help","preview",["Un Corporate Developer joignable à tout moment","Derrière Stan, Alexandre, votre Corporate Developer humain, relit les meilleures cibles, cale vos critères de vive voix et répond à vos questions. Il est joignable par téléphone, par email ou sur rendez-vous, à chaque étape.","Ce bouton réserve un échange avec Alexandre. Suivant ouvre la partie 2 : la carte de votre marché."],["A Corporate Developer you can reach anytime","Behind Stan, Alexandre, your human Corporate Developer, reviews the best targets, sets your criteria with you and answers your questions. You can reach him by phone, by email or with a booked meeting, at every stage.","This button books a conversation with Alexandre. Next opens part 2: the map of your market."])]},{id:"map",fr:["La carte de votre marché","Tout votre marché, dâun coup dâÅil","La carte rassemble les s
1559ociétés passées au crible pour votre thèse. Autour dâelle : la couverture du marché, le moteur de mémos, sa file de traitement et les filtres."],en:["The map of your market","Your whole market at a glance","The map gathers the companies screened for your thesis. Around it: market coverage, the memo engine, its processing queue and the filters."],steps:[le("map-zoom","targets","map",["La carte de vos cibles","Chaque point est une société passée au crible pour Asteria, placée à son siège. Ici, la carte zoome sur lâEurope ; les onglets de continents changent la zone et filtrent la liste en dessous. Câest ici que vous voyez dâun regard où sont vos cibles retenues, analysées et à trancher.","La carte zoome sur lâEurope. Suivant : la couverture du marché."],["The map of your targets","Each dot is a company screened for Asteria, placed at its headquarters. Here the map zooms on Europe; the continent tabs change the area and filter the list below. This is where you see at a glance where your kept, analysed and pending targets are.","The map zooms on Europe. Next: market coverage."]),le("coverage","sourcing","coverage",["La couverture du marché","Ce compteur dit combien de sociétés de votre marché Stan a déjà passées au crible, rapporté à la taille estimée du marché pertinent. Dessous : combien sont retenues et combien sont déjà analysées. Il mesure le travail accompli, pas le nombre de sociétés à vendre.","Toute la box est encadrée ; un clic ouvre le détail. Suivant : le calcul des sociétés pertinentes."],["Market coverage","This counter shows how many companies in your market Stan has already screened, against the estimated size of the relevant market. Below: how many are kept and how many are already analysed. It measures work done, not the number of companies for sale.","The whole box is framed; a click opens the details. Next: how relevant companies are counted."]),le("coverage-popup","sourcing","coverage",["Le détail de la couverture","Le popup justifie chaque chiffre : sociétés criblées, marché estimé, part couverte et rythme. « Comment ce chiffre est calculé » détaille le périmètre de votre thèse, chaque code dâactivité par pays avec sa source officielle, et le total des sociétés pertinentes.","Ce lien déplie le calcul des sociétés pertinentes. Suivant : le moteur de mémos."],["Coverage details","The popup justifies every figure: companies screened, estimated market, share covered and pace. âHow this figure is calculatedâ details your thesis perimeter, each activity code by country with its official source, and the total of relevant companies.","This link expands how relevant companies are counted. Next: the memo engine."]),le("memo-engine","queue","queue",["Le moteur de mémos","Il analyse vos sociétés retenues à un rythme que vous réglez, de 0 à 10 mémos par jour. En offre Entreprise, toutes les retenues sont analysées sous 24 heures ; en Standard, sous 7 jours. Votre offre et son délai sâaffichent ici.","Toute la box du moteur est encadrée. Suivant : la file de traitement."],["The memo engine","It analyses your kept companies at a pace you set, from 0 to 10 memos a day. On the Enterprise plan, every kept company is analysed within 24 hours; on Standard, within 7 days. Your plan and its turnaround appear here.","The whole engine box is framed. Next: the processing queue."]),le("memo-queue","queue","queue",["La file de traitement","La file montre les mémos en cours, ceux prévus demain et ceux terminés aujourdâhui, avec lâéchéance pour la vider. Le rythme se règle juste en dessous. Les dossiers analysés montent seuls dans le deal flow.","Ces boutons règlent le rythme dâanalyse. Suivant : les filtres de la carte."],["The processing queue","The queue shows memos in progress, those planned for tomorrow and those finished today, with the date it will be cleared. The pace is set just below. Analysed files move up the deal flow on their own.","These buttons set the analysis pace. Next: the map filters."]),le("map-filters","targets","filters",["Les filtres","à droite de la carte, les filtres réduisent la vue aux sociétés qui vous intéressent : péri
1559ode, recherche, signal, secteur, pays, moteur, stade, verdict, angle, niveau de mémo. La carte et la liste suivent le même filtre.","Ces filtres pilotent la carte et la liste. Suivant : replier la carte."],["The filters","To the right of the map, filters narrow the view to the companies you care about: period, search, signal, sector, country, engine, stage, verdict, angle and memo level. The map and the list follow the same filter.","These filters drive the map and the list. Next: fold the map."]),le("fold-map","targets","filters",["Replier la carte","Quand vous travaillez dans la liste, repliez la carte pour gagner de la place ; un clic la redéplie. Vos filtres restent appliqués.","Ce bouton replie ou déplie la carte. Suivant ouvre la partie 3 : le sourcing."],["Fold the map","When you work in the list, fold the map to gain space; one click unfolds it. Your filters stay applied.","This button folds or unfolds the map. Next opens part 3: sourcing."])]},{id:"sourcing",fr:["Le sourcing","Chaque matin, tout ce qui se fait","Le deal flow sâalimente de trois façons : les analyses lancées sur vos sociétés retenues, vos ajouts en un clic et les moteurs qui tournent chaque matin."],en:["Sourcing","Every morning, everything that happens","The deal flow is fed three ways: analyses launched on your kept companies, your one-click additions and the engines that run every morning."],steps:[le("live-analyses","queue","live",["Les analyses en direct","Ce bandeau suit les mémos lancés sur les sociétés retenues : avancement, étape en cours, heure de fin estimée. Le â¶ Ã droite de la barre montre le mémo se fabriquer, phase par phase. Un mémo prêt sâouvre dâici.","Le â¶ montre le mémo se fabriquer. Suivant : évaluer une société en un clic."],["Live analyses","This band tracks memos launched on kept companies: progress, current stage, estimated finish time. The â¶ to the right of the bar shows the memo being built, phase by phase. A finished memo opens from here.","The â¶ shows the memo being built. Next: screen a company in one click."]),le("add-company","discovery","company-input",["Ãvaluer une société en un clic","Collez un nom ou un site : Stan retrouve le domaine, le pays et le secteur, puis passe la société au crible de votre thèse. Elle rejoint la liste, retenue ou écartée, avec la raison.","Toute la box est encadrée ; le champ est prêt. Suivant : évaluer en masse."],["Screen a company in one click","Paste a name or a website: Stan finds the domain, country and sector, then screens the company against your thesis. It joins the list, kept or ruled out, with the reason.","The whole box is framed; the field is ready. Next: screen in bulk."]),le("eval-tools","discovery","company-input",["Ãvaluer en masse","Sous la barre : évaluer plusieurs sociétés à la fois, extraire et évaluer les sociétés citées dans un article, retrouver vos recherches, et passer au crible tous les deals du jour ou toute la presse du jour.","Ces liens évaluent des listes entières. Suivant : vos moteurs de sourcing."],["Screen in bulk","Below the bar: screen several companies at once, extract and screen the companies named in an article, find your past searches, and screen all of todayâs deals or todayâs press.","These links screen whole lists. Next: your sourcing engines."]),le("engines","sourcing","engines",["Vos moteurs de sourcing","Chaque matin, tous les outils de sourcing branchés sur votre thèse tournent : recherche web, sociétés similaires, registres officiels, presse. Ils ont vocation à tout englober : une base de données ou un outil que vous utilisez déjà peut sây ajouter. Chaque moteur affiche ses requêtes et ses résultats.","Toute la box dépliée : moteurs et film du matin. Suivant : le film du passage du matin."],["Your sourcing engines","Every morning, every sourcing tool wired to your thesis runs: web search, similar companies, official registers, press. They aim to cover everything: a database or tool you already use can be added. Each engine shows its queries and results.","The whole open box: engines and morning film. Next: the morning run, as a film."]),le("run-film","sourcing","engines",["Le film du passage du matin","Le film rejoue le passage, étape par étape : revue de presse, moteur
1559s lancés, sites vérifiés, doublons retirés, verdicts posés. Pendant un passage, il sâécrit en direct ; ensuite, il se rejoue à tout moment.","Ce bouton rejoue le film du matin. Suivant ouvre la partie 4 : le deal flow."],["The morning run, as a film","The film replays the run step by step: press review, engines launched, websites checked, duplicates removed, verdicts given. During a run it writes itself live; afterwards it can be replayed at any time.","This button replays the morning film. Next opens part 4: the deal flow."])]},{id:"dealflow",fr:["Le deal flow","Un pipeline qui se range tout seul","Sous la carte, la zone de deal flow management : chaque dossier avance dâétape en étape selon le crible, puis le verdict de Stan. à droite, lâédito du jour et la fiche du dossier."],en:["The deal flow","A pipeline that sorts itself","Below the map, the deal flow management zone: each file moves from stage to stage based on the screen, then Stanâs verdict. On the right, todayâs brief and the file itself."],steps:[le("dealflow-kept","targets","pipeline",["Vos sociétés retenues","La zone de deal flow management rassemble tous vos dossiers. Retenues regroupe les sociétés qui ont passé le crible de votre thèse ; elles attendent leur mémo, lancé à la main ou automatiquement par la file.","Toute la liste est encadrée ; Retenues est mis en valeur. Suivant : donner votre avis dâun pouce."],["Your kept companies","The deal flow management zone gathers all your files. Kept groups the companies that passed your thesis screen; they wait for their memo, launched by hand or automatically by the queue.","The whole list is framed; Kept is highlighted. Next: give your view with a thumb."]),le("kept-thumbs","targets","pipeline",["Un pouce pour affiner Stan","Sur chaque ligne des Retenues, ð ou ð donne votre avis en un clic, sans ouvrir le dossier. Chaque avis est gardé au carnet de Stan : il sâen sert pour vous proposer des corrections de votre thèse, et votre Corporate Developer pour ajuster vos critères. Le cockpit vous demande ensuite pourquoi, en une ligne, si vous le souhaitez.","ð sur la ligne de Novalis donne votre avis. Suivant : le carnet où Stan lâinscrit."],["A thumb to fine-tune Stan","On every Kept row, ð or ð gives your view in one click, without opening the file. Every view is kept in Stanâs logbook: he uses it to propose corrections to your thesis, and your Corporate Developer to adjust your criteria. The cockpit then asks why, in one line, if you wish.","ð on Novalisâs row gives your view. Next: the logbook where Stan records it."]),le("thumbs-journal","targets","pipeline",["Le carnet de bord de Stan","Chaque pouce sâinscrit, daté, dans le carnet de bord de Stan, avec son pourquoi. Vos corrections de critères et les ajustements automatiques de la nuit y figurent aussi : vous voyez exactement ce qui fait évoluer votre sourcing.","Votre pouce sur Novalis est en tête du carnet. Suivant : les dossiers analysés."],["Stanâs logbook","Every thumb is logged, dated, in Stanâs logbook, with its reason. Your criteria corrections and the nightly adjustments are there too: you see exactly what shapes your sourcing.","Your thumb on Novalis tops the logbook. Next: analysed files."]),le("dealflow-analysed","targets","pipeline",["Analysées : lâétape dâaprès, automatiquement","Dès quâun dossier retenu est analysé, à la main ou par la file dâattente, il monte seul dans Analysées. Selon le verdict de Stan, il continue vers à trancher ou part dans Ãcartées. Vous nâavez rien à déplacer.","Toute la liste est encadrée ; Analysées est mis en valeur. Suivant : lâédito du jour."],["Analysed: the next stage, automatically","As soon as a kept file is analysed, by hand or through the queue, it moves up to Analysed on its own. Depending on Stanâs verdict, it goes on to To decide or to Ruled out. You have nothing to move.","The whole list is framed; Analysed is highlighted. Next: todayâs brief."]),le("edito","targets","brief",["Lâédito du jour","Juste à droite, lâédito sélectionne chaque matin les levées de fonds et les opérations M&A qui comptent pour votre thèse, avec ce que chacune signifie pour Asteria : consolidateur à surveiller, comparable de valorisation, concurrent mieux financé.","Lâédito du jour est ouvert. Suivant : lâévaluation dâun dossier retenu."],["Todayâs brief","Just to the right, the brief picks each morning the fundraisings and M&A deals that matter to your thesis, with what each one means for Asteria: a consolidator to watch, a valuation comparable, a better-funded competitor.","Todayâs brief is open. Next: a kept fileâs evaluation."]),le("evaluation","company","evaluation",["Lâévaluation A-B-C-D","Un clic sur Novalis, retenue, ouvre sa fiche. Lâonglet Ãvaluation montre pourquoi Stan lâa gardée, point par point : A lâactivité, B lâangle, C la géographie, D le profil, chacun avec les faits trouvés sur la société.","Lâonglet Ãvaluation détaille les quatre points. Suivant ouvre la partie 5 : le verdict de Stan."],["The A-B-C-D evaluation","Clicking Novalis, a kept company, opens its file. The Evaluation tab shows why Stan kept it, point by point: A business, B angle, C geography, D profile, each with the facts found about the company.","The Evaluation tab details the four points. Next opens part 5: Stanâs verdict."])]},{id:"verdict",fr:["Le verdict de Stan","Le deal flow management autonome","Chaque mémo se conclut par un verdict, et le verdict range le dossier : à trancher pour un CALL, Ãcartées pour un PASS. Vous gardez la décision finale."],en:["
1559Stanâs verdict","Autonomous deal flow management","Every memo ends with a verdict, and the verdict files the dossier: To decide for a CALL, Ruled out for a PASS. You keep the final decision."],steps:[le("memo-verdict","memo","memo",["Le jugement de Stan : CALL","Le mémo éclair de Novalis est prêt. Dans lâonglet Mémo, Stan conclut : CALL recommande de rencontrer le dirigeant ; CONSIDER demande un complément ; MONITOR propose de surveiller, comme Orion qui reste dans Analysées ; PASS écarte. Novalis obtient CALL.","CALL est le jugement de Stan sur Novalis. Suivant : où part le dossier."],["Stanâs judgement: CALL","Novalisâs instant memo is ready. In the Memo tab, Stan concludes: CALL recommends meeting the founder; CONSIDER asks for more; MONITOR suggests watching, like Orion, which stays in Analysed; PASS rules out. Novalis gets CALL.","CALL is Stanâs judgement on Novalis. Next: where the file goes."]),le("to-decide","decision","pipeline",["Envoyé seul dans à trancher","Avec un CALL, Novalis nâest pas restée dans Analysées : elle est passée seule dans à trancher. Câest le deal flow management autonome : nây arrive que ce qui mérite votre décision.","Toute la liste est encadrée ; à trancher accueille Novalis. Suivant : un dossier jugé PASS."],["Sent to To decide on its own","With a CALL, Novalis did not stay in Analysed: it moved to To decide on its own. This is autonomous deal flow management: only what deserves your decision lands there.","The whole list is framed; To decide now holds Novalis. Next: a file judged PASS."]),le("pass-verdict","decision","memo",["Un PASS part dans Ãcartées","Boréal Facility Démo a passé le crible, mais son mémo détaillé conclut PASS, preuves à lâappui : marge de 4 % en baisse, un client public à 58 % du chiffre dâaffaires remis en concurrence en 2027, aucune synergie avec Asteria et un prix demandé de 8x lâEBITDA quand les comparables sont à 5x. Le dossier est rangé seul dans Ãcartées ; il reste repêchable.","PASS a envoyé Boréal dans Ãcartées ; son mémo sâouvre ici. Suivant : votre décision sur Novalis."],["A PASS goes to Ruled out","Boréal Facility Démo passed the screen, but its detailed memo concludes PASS, with evidence: a declining 4% margin, one public customer at 58% of revenue re-tendered in 2027, no synergy with Asteria and an asking price of 8x EBITDA when comparables trade at 5x. The file is moved to Ruled out on its own; it can still be recovered.","PASS sent Boréal to Ruled out; its memo opens from here. Next: your decision on Novalis."]),le("yes-no","decision","decision",["Vous tranchez : OUI ou NON","Dans la liste, onglet à trancher, chaque ligne porte ses boutons â Oui et â Non. Le verdict de Stan éclaire, vous décidez : Oui fait passer Novalis en Validées pour lancer lâapproche, Non la range dans Ãcartées. Aucun email nâest envoyé.","â Oui, sur la ligne de Novalis, poursuit le dossier. Suivant : donner le pourquoi."],["You decide: YES or NO","In the list, To decide tab, each row carries its â Yes and â No buttons. Stanâs verdict informs, you decide: Yes moves Novalis to Validated to start outreach, No moves it to Ruled out. No email is sent.","â Yes, on Novalisâs row, continues the file. Next: explain why."]),le("reason","decision","decision",["Donner le pourquoi : Stan apprend","Juste après le Oui, le cockpit demande pourquoi, en une ligne. Stan sâen sert pour affiner ses proch
1559ains verdicts, et votre Corporate Developer pour ajuster vos critères. Plus tard suffit aussi : la note reste modifiable dans la fiche.","Le motif fictif est déjà rempli ; Envoyer lâenregistre. Suivant ouvre la partie 6 : lâapproche."],["Explain why: Stan learns","Right after the Yes, the cockpit asks why, in one line. Stan uses it to sharpen his next verdicts, and your Corporate Developer to adjust your criteria. Later works too: the note stays editable in the file.","The fictional reason is already filled in; Send saves it. Next opens part 6: outreach."])]},{id:"approach",fr:["Lâapproche","Le pipeline se tient seul","Une fois le dossier validé, la séquence dâapproche est prête : vous gardez la main sur lâenvoi, les statuts avancent."],en:["Outreach","The pipeline runs itself","Once the file is validated, the outreach sequence is ready: you control every send, statuses move forward."],steps:[le("contact-details","contact","contact-drafts",["Retrouver le bon interlocuteur","La fiche Contact rassemble le dirigeant et ses coordonnées lorsquâelles sont disponibles. Les adresses de cette démo utilisent example.invalid.","Contact affiche lâinterlocuteur et ses coordonnées. Suivant : quatre messages préparés."],["Find the right person","Contact collects the manager and available details. Demo addresses use example.invalid.","Contact shows the person and their details. Next: four prepared messages."]),le("sequence","contact","contact-drafts",["Quatre messages préparés","La séquence dâapproche se décline en email ou LinkedIn, à J0, J2, J4 et J6. Elle propose un contact cohérent avec lâintérêt stratégique de la cible.","J0 affiche le premier message préparé. Suivant : vous gardez la main sur lâenvoi."],["Four prepared messages","The outreach sequence supports email or LinkedIn at D0, D2, D4 and D6. It proposes contact aligned with the targetâs strategic fit.","D0 displays the first prepared message. Next: you control sending."]),le("send-control","contact","contact-drafts",["Vous gardez la main sur lâenvoi","Vous pouvez copier le texte ou ouvrir votre messagerie depuis cette fenêtre. Dans cette démonstration, les liens externes sont interceptés ; aucun message nâest envoyé.","Copier récupère le texte ; vous choisissez lâenvoi. Suivant : contactée, réponse, rendez-vous."],["You control sending","You can copy the text or open your mail client from this window. External links are intercepted in this demonstration; no message is sent.","Copy retrieves the text; you control sending. Next: contacted, replied, meeting."]),le("follow-up","contact","contact-stage",["Contactée, réponse, rendez-vous","Les stades décrivent lâavancement après le OUI. Dans le cockpit, un dossier sans réponse depuis plusieurs jours peut vous signaler une relance.","RDV indique quâun rendez-vous est prévu. Suivant ouvre la partie 7 : jusquâà la signature."],["Contacted, replied, meeting","Stages describe progress after YES. In the cockpit, a file without a reply for several days can flag a follow-up.","Meeting shows a meeting is scheduled. Next opens part 7: through to signing."])]},{id:"closing",fr:["Jusquâà la signature","Rien nâest oublié avant le SPA","Le dossier comité se modifie, sâenregistre et sâenvoie ; un vrai mémo détaillé se lit partie par partie et son résumé arrive par email ; le Parcours réunit les actions, preuves et validations ; lâHistorique retrace le travail jusquâau closing et aux 100 premiers jours."],en:["Through to signing","Nothing is missed before the SPA","The committee file can be edited, saved and sent; a real detailed memo is read part by part and its summary arrives by email; Journey brings together actions, evidence and approvals; History records the work through closing and the first 100 days."],steps:[le("committee-dossier","committee","committee",["Le dossier comité, à votre main","Le bouton Dossier comité ouvre le mémo sous forme de document : vous modifiez le texte, ajoutez une note, retirez une section, puis exportez un PDF à envoyer à qui vous voulez, comité, associé ou banquier.","Cette barre modifie le dossier et exporte le PDF. Suivant : la page du mémo."],["The committee file, your way","The Committee file button opens the memo as a document: edit the text, add a note, remove a section, then export a PDF to send to anyone you like, a committee, a partner or a banker.","This bar edits the file and exports the PDF. Next: the memo page."]),le("save-dossier","committee","committee",["Le dossier sâenregistre","Le bouton ð¾ Enregistrer sauvegarde le dossier comité, et « Enregistré à ⦠â » le confirme. Il sâenregistre aussi à chaque modification : vous le retrouvez tel quel à la prochaine ouverture, et « Rétablir lâoriginal » repart du mémo de Stan.","Une note vient dâêtre ajoutée puis enregistrée. Suivant : un vrai mémo détaillé, partie par partie."],["The file saves","The ð¾ Save button saves the committee file, and âSaved at ⦠ââ confirms it. It also saves on every edit: you find it as you left it next time, and âRestore the originalâ goes back to Stanâs memo.","A note was just added, then saved. Next: a real detailed memo, part by part."]),le("open-full-memo","memo","memo",["Un vrai mémo détaillé : le marché","Pour que vous voyiez exactement ce que vous recevrez, la démo ouvre ici un vrai mémo détaillé, rédigé par Stan le 2 octobre 2026 pour un client Proplace, un groupe de courtage en assurance santé dont le nom est masqué. La cible : Aitona, courtier digital en assurance internationale. à gauche, le menu donne accès à chaque partie. Le marché dâabord : dimensionnement, chaîne de valeur et ses acteurs, marché et concurrence sourcés, carte concurrentielle, quadrant M&A et scénarios stratég
1559iques.","Ces entrées couvrent le marché. Suivant : la société."],["A real detailed memo: the market","So that you see exactly what you will receive, the demo opens a real detailed memo here, written by Stan on 2 October 2026 for a Proplace client, a health-insurance brokerage group whose name is hidden. The target: Aitona, a digital international-insurance broker. The memo is in French, as delivered. On the left, the menu opens every part. The market first: sizing, the value chain and its players, sourced market and competition, the competitive map, the M&A quadrant and strategic scenarios.","These entries cover the market. Next: the company."]),le("memo-company","memo","memo",["La société, en sept entrées","Proposition de valeur, produit, modèle dâaffaires, équipe, synthèse, SWOT et plan dâaction. La carte mentale résume ce que fait Aitona ; chaque fait renvoie à sa source, et ce qui nâest pas documenté est dit comme tel.","Ces sept entrées décrivent la société. Suivant : les synergies avec le client."],["The company, in seven entries","Value proposition, product, business model, team, summary, SWOT and action plan. The mind map sums up what Aitona does; every fact links to its source, and what is not documented is stated as such.","These seven entries describe the company. Next: the synergies with the client."]),le("memo-synergies","memo","memo",["Les synergies avec le client","Où le rapprochement crée de la valeur pour ce client : les leviers classés, leur logique et ce quâil faut vérifier, puis la séquence dâapproche déjà rédigée au nom de son dirigeant, prête à copier.","Cette entrée porte les synergies et lâapproche. Suivant : le verdict."],["The synergies with the client","Where the combination creates value for this client: ranked levers, their logic and what to check, then the outreach sequence already written in its CEOâs name, ready to copy.","This entry carries the synergies and outreach. Next: the verdict."]),le("memo-finance","memo","memo",["Le verdict : CONSIDER, et pourquoi","La conviction de Stan conclut CONSIDER : la logique stratégique tient, mais Aitona, trois personnes, nâa publié aucun compte. Les prévisions suivent le référentiel du métier ; la valorisation, elle, nâest pas inventée : le mémo dit quâelle nâest pas calculable et quelles pièces obtenir pour la débloquer.","Ces entrées portent le verdict. Suivant : le résumé reçu par email."],["The verdict: CONSIDER, and why","Stanâs conviction concludes CONSIDER: the strategic logic holds, but Aitona, a team of three, has published no accounts. Forecasts follow the industry benchmarks; the valuation is not invented: the memo says it cannot be computed and which documents would unlock it.","These entries carry the verdict. Next: the summary received by email."]),le("memo-email","alerts","alert-form",["Le mémo terminé arrive par email","Dès quâun mémo est terminé, vous recevez son résumé par email : le verdict de Stan et ses raisons, la synthèse de la société, le SWOT, le plan dâaction et le lien vers le mémo complet. Voici lâaperçu réel de lâemail envoyé le 4 octobre 2026 à ce même client, à la fin du mémo éclair de Riviera Expat. Vous choisissez les rubriques et lâadresse de réception.","Cet aperçu est lâemail réellement envoyé, client masqué. Suivant : le parcours jusquâau closing."],["The finished memo arrives by email","As soon as a memo is finished, you receive its summary by email: Stanâs verdict and his reasons, the company summary, the SWOT, the action plan and the link to the full memo. This is the real preview of the email sent on 4 October 2026 to the same client, at the end of Riviera Expatâs instant memo. You choose the sections and the delivery address.","This preview is the email actually sent, client name hidden. Next: the path to closing."]),le("dd-checks","diligence","diligence",["Votre route vers le closing","Le Parcours se joue comme une quête : un objectif, le closing, et sept jalons de la qualification à la signature. Chaque étape se coche avec ses preuves ; celles qui restent à faire sont grisées mais consultables, et la prochaine est mise en avant. Le plan 100 jours et le reporting forment une seconde séquence, après le closing. Novalis et Asteria sont entièrement fictifs.","Repérez la prochaine étape et les jalons à franchir. Suivant : lancer les vérifications dâune étape."],["Your road to closing","The Journey plays like a quest: one objective, closing, and seven milestones from qualification to signing. Each step is checked off with its evidence; open steps stay greyed out but viewable, and the next one is highlighted. The 100-day plan and reporting form a second sequence, after closing. Novalis and Asteria are fictional.","Find the next step and the milestones ahead. Next: run the checks for a step."]),le("stan-chat","memo","memo",["Votre NDA, prêt à relire","Lancez la génération : le film montre la lecture des identités, la préparation des clauses et la production des documents. Ouvrez ensuite le NDA entièrement renseigné pour Novalis et Asteria, sa demande de pièces et le message personnalisé. Chaque document se télécharge en PDF ou en version modifiable. Les proch
1559aines étapes vous font tester dâautres livrables de Stan. Tout ce dossier est fictif et gratuit.","Générez le NDA, regardez le film et ouvrez son PDF. Suivant : détecter un écart dans les comptes."],["Your NDA, ready for review","Start generation: the film shows identity review, clause preparation and document production. Then open the NDA completed for Novalis and Asteria, the document request and the personalised message. Every document can be downloaded as a PDF or editable version. The next steps let you try more Stan work products. This entire deal is fictional and free.","Generate the NDA, watch the film and open its PDF. Next: find a discrepancy in the accounts."]),le("stan-finance","memo","memo",["Stan retrouve les 500 ⬠manquants","Lancez le rapprochement. Stan reprend les contrats, les factures et les encaissements fictifs de septembre : 15 000 ⬠facturés, 14 500 ⬠encaissés. Le film montre les contrôles ; le tableau identifie CL002 et son écart de 500 â¬. Ouvrez le rapprochement et la demande dâexplication préparée. Ce contrôle porte sur les pièces fournies ; il ne certifie pas lâauthenticité dâun relevé bancaire.","Rapprochez les comptes, puis ouvrez le tableau et la demande dâexplication. Suivant : la LOI."],["Stan finds the missing â¬500","Run reconciliation. Stan reuses the fictional September contracts, invoices and receipts: â¬15,000 invoiced and â¬14,500 received. Watch the checks, then inspect CL002 and its â¬500 discrepancy in the table. Open the reconciliation and the prepared clarification request. The check covers the supplied records; it does not authenticate a bank statement.","Reconcile the accounts, then open the table and the clarification request. Next: the LOI."]),le("stan-loi","memo","memo",["Une LOI qui reprend les réserves du dossier","Lancez la préparation des conditions. Stan reprend le modèle Asteria : valeur dâentreprise indicative de 4,5 Mâ¬, trésorerie nette de 0,6 M⬠et prix des titres de 5,1 M⬠avant ajustements. La lettre reprend lâécart de 500 â¬, la cap table attendue et les références clients dans ses réserves de DD. Ouvrez la LOI et les points de négociation. En mode VC, cette même action prépare un term sheet ; les engagements restent à relire et à valider.","Préparez les conditions, puis ouvrez la LOI et ses réserves. Suivant : le dossier comité."],["An LOI that carries the dealâs open issues","Prepare the terms. Stan reuses the Asteria model: indicative enterprise value of â¬4.5m, â¬0.6m net cash and â¬5.1m equity price before adjustments. The letter includes the â¬500 discrepancy, missing cap table and customer references in its DD conditions. Open the LOI and negotiation points. In VC mode, this action prepares a term sheet; commitments still require review and approval.","Prepare the terms, then open the LOI and its conditions. Next: the committee dossier."]),le("stan-committee","memo","memo",["Cinq pages pour décider en comité","Stan réutilise le mémo, le modèle et les risques déjà documentés pour préparer la synthèse : décision proposée, thèse, économie du deal, risques et conditions. Lancez la production, lisez le document puis ouvrez « PDF · synthèse 5 pages ». Les réserves restent visibles : produire un dossier ne signifie pas que le comité a décidé.","Produisez le dossier, puis ouvrez « PDF · synthèse 5 pages ». Suivant : le rapport de due diligence."],["Five pages for a committee decision","Stan reuses the memo, model and documented risks to prepare the summary: proposed decision, thesis, deal economics, risks and conditions. Run production, read the document and open âPDF · synthèse 5 pagesâ. The open conditions remain visible: producing a dossier does not mean the committee has decided.","Produce the dossier, then open âPDF · synthèse 5 pagesâ. Next: the due diligence report."]),le("stan-dd-report","memo","memo",["Un rapport de DD relié aux preuves","Lancez la consolidation. Stan rassemble les contrôles du dossier, le registre de risques et les conditions de la LOI. Ouvrez le rapport pour retrouver lâécart CL002, les documents manquants, les responsables et les points encore ouverts. Les sources se consultent dans « Analyse et sources utilisées ». Exportez le PDF ; les contrôles incomplets restent explicitement à traiter.","Produisez le rapport, ouvrez ses sources puis exportez le PDF. Suivant : les conditions de closing."],["A DD report linked to evidence","Run consolidation. Stan brings together the dealâs checks, risk register and LOI conditions. Open the report to find the CL002 discrepancy, missing documents, owners and unresolved
1559issues. Inspect evidence in âAnalyse et sources utiliséesâ, then export the PDF. Incomplete checks stay explicitly open.","Produce the report, inspect its sources and export the PDF. Next: closing conditions."]),le("ask-stan","memo","memo",["Préparer, vérifier, puis valider","Un texte généré ne vaut ni signature ni décision. Stan prépare les travaux et expose les preuves manquantes : accords, autorisations, conditions levées et règlements. Les validations vous appartiennent. Même bloquée, chaque étape reste consultable ; vous pouvez déjà préparer la suite et le plan 100 jours.","Ouvrez les conditions et consultez les pièces attendues. Suivant : le plan 100 jours."],["Prepare, check, then approve","Generated text is neither a signature nor a decision. Stan prepares the work and exposes missing evidence: agreements, approvals, fulfilled conditions and payments. You retain approval. Every step can be viewed even when blocked, so you can prepare the next steps and the 100-day plan.","Inspect the conditions and missing evidence. Next: the 100-day plan."]),le("stan-100days","memo","memo",["Les engagements deviennent un plan 100 jours","Lancez la production du plan. Stan reprend les engagements de la fondatrice et les risques résiduels, puis prépare les actions à J30, J60 et J100 : rapprochement des revenus, références, droits IP, organisation et intégration. Ouvrez le plan et attribuez les responsables avec votre équipe. Le suivi et le prochain board réutiliseront ce travail ; aucun closing nâest simulé comme acquis.","Produisez le plan, puis ouvrez ses actions et échéances. Suivant : revoir tout le travail dans lâhistorique."],["Turn commitments into a 100-day plan","Generate the plan. Stan reuses the founderâs commitments and remaining risks to prepare actions for days 30, 60 and 100: revenue reconciliation, references, IP rights, organisation and integration. Open the plan and assign owners with your team. Monitoring and the next board reuse this work; no completed closing is assumed.","Produce the plan, then open its actions and deadlines. Next: replay the work in history."]),le("save-memo","memo","memo",["Lâhistorique complet du dossier","Retrouvez les NDA, rapprochement, LOI, comité, DD et plan 100 jours que vous venez de préparer, avec leur date et leur auteur. Ouvrez une ligne pour revoir ses opérations, puis exportez le dossier et les preuves. Seules les actions que vous avez lancées apparaissent comme réalisées. Les traces techniques détaillées durent sept jours ; les pièces utiles et décisions restent pendant la vie du dossier.","Ouvrez une ligne ou son replay. Suivant : clôturer le suivi fictif."],["The complete deal history","Find evidence, checks, results and decisions with dates and authors. Replay a memo or analysis, then export the dossier and evidence for the committee. Detailed technical traces last seven days; useful evidence and decisions remain throughout the active deal.","Open an event or its replay. Next: close the fictional tracker."]),le("signature","contact","contact-stage",["Clôturer le suivi","Une fois les vérifications et conditions de closing traitées avec les parties et vos conseils, le stade Signée reflète lâaboutissement. Proplace nâeffectue pas une signature juridique par ce clic.","Signée clôture le suivi fictif. Suivant ouvre la partie 8 : au quotidien."],["Close the tracker","Once checks and closing conditions are handled with the parties and advisers, Signed records the outcome. This click does not execute a legal signature.","Signed closes the fictional tracker. Next opens part 8: day to day."])]},{id:"routine",fr:["Au quotidien","La continuité fait la valeur","Un seul moteur, qui apprend de vos décisions et revient vers vous chaque matin : lâemail du jour et la revue du lundi."],en:["Day to day","Continuity is the value","One engine that learns from your decisions and comes back to you every morning: the daily email and the Monday review."],steps:[le("daily-email","alerts","alert-form",["Votre email quotidien","Chaque matin, le brief rassemble vos dossiers à trancher avec lâanalyse de Stan et vos boutons OUI / NON, vos nouvelles retenues avec leurs pouces, et ce qui bouge sur votre marché. Voici lâaperçu réel du brief dâun client Proplace, rendu par le même moteur que le vôtre ; seul son nom est masqué. Vous réglez jours, heure et rubriques.","Cet aperçu est le vrai brief du jour. Suivant : votre revue du lundi."],["Your daily email","Every morning, the brief gathers your files to decide with Stanâs analysis and your YES / NO buttons, your new kept companies with their thumbs, and what is moving in y
1559our market. This is the real preview of a Proplace clientâs brief, rendered by the same engine as yours; only its name is hidden. You set days, time and sections.","This preview is the real brief of the day. Next: your Monday review."]),le("monday-review","weekly","weekly",["Votre revue du lundi","Le bilan réunit décisions attendues, décisions de Stan, annotations du Corporate Developer, améliorations des critères et actualité utile. Le jour et lâheure sont réglables. Lâaperçu est le vrai bilan de la semaine du même client, nom masqué.","Hebdomadaire affiche le vrai bilan de la semaine. Suivant : exporter votre sélection."],["Your Monday review","The review collects pending decisions, Stanâs decisions, Corporate Developer notes, improved criteria and useful news. Day and time are configurable. The preview is the same clientâs real weekly review, name hidden.","Weekly shows the real weekly review. Next: export your selection."]),le("export-selection","exports","export",["Exporter votre sélection","
1559Lâonglet affiché est votre sélection : aucune case à cocher. Téléchargez-la en CSV, filtres compris, imprimez-la, ouvrez-la dans Excel, ou collez une formule dans votre tableur pour quâelle sây mette à jour toute seule. Chaque ligne porte le verdict, lâangle, le mémo et le contact.","Télécharger exporte la vue affichée, filtres compris. Suivant : connecter cette page à vos outils."],["Export your selection","The visible tab is your selection: no checkboxes. Download it as CSV, filters included, print it, open it in Excel, or paste a formula into your spreadsheet so it updates by itself. Every row carries the verdict, the angle, the memo and the contact.","Download exports the visible view, filters included. Next: connect this page to your tools."]),le("connect-tools","connections","connect",["Connecter cette page à vos outils","Vos décisions partent dâelles-mêmes là où vous travaillez : votre CRM (HubSpot, Pipedrive, Salesforce, via Make, Zapier ou n8n), une campagne Instantly, un script, ou votre assistant IA via MCP. Trois étapes, une seule fois : où envoyer, le lien de votre outil, et quand envoyer â une cible validée, un stade franchi, une approche prête.","Choisissez la destination de vos décisions. Suivant : rechercher et actualiser."],["Connect this page to your tools","Your decisions go by themselves where you work: your CRM (HubSpot, Pipedrive, Salesforce, via Make, Zapier or n8n), an Instantly campaign, a script, or your AI assistant through MCP. Three steps, once: where to send, your toolâs link, and when to send â a validated target, a stage reached, an approach ready.","Pick where your decisions go. Next: search and update."]),le("source-refresh","sourcing","sourcing",["Rechercher et actualiser","Les moteurs tournent déjà chaque matin. Le bouton ð permet une relance manuelle par jour et par fonds : une confirmation, puis le film de la recherche, du crible et de la publication de votre page. Ici, toutes ces étapes sont simulées pour Asteria.","Cliquez sur Lancer pour suivre la recherche fictive. Suivant : revenir aux prochaines décisions."],["Search and update","The engines already run every morning. The ð button allows one manual relaunch per day per fund: a confirmation, then the film of the search, screening and publication of your page. Here, all these steps are simulated for Asteria.","Click Start to follow the fictional search. Next: return to the next decisions."]),le("repeat-routine","help","help",["Revenir aux prochaines décisions","Chaque matin, de nouveaux dossiers arrivent dans à trancher : ici Atlas et Kepler, analysés cette nuit et jugés CALL. Un clic sur â Oui ou â Non, depuis la liste ou depuis lâemail du matin, et le dossier avance tout seul. Le guide reste accessible pour refaire une partie.","â Oui ou â Non sur chaque ligne : à vous de trancher. Vous pouvez maintenant explorer ou refaire une partie."],["Return to the next decisions","Every morning, new files arrive in To decide: here Atlas and Kepler, analysed overnight and judged CALL. One click on â Yes or â No, from the list or from the morning email, and the file moves on by itself. The guide remains available to revisit a part.","â Yes or â No on each row: your call. You can now explore or revisit a part."])]}],Yy={fr:Hh.map(t=>({id:t.id,label:t.fr[0],title:t.fr[1],summary:t.fr[2],steps:t.steps.map(n=>({id:n.id,scene:n.scene,target:n.target,title:n.fr[0],body:n.fr[1],instruction:n.fr[2]}))})),en:Hh.map(t=>({id:t.id,label:t.en[0],title:t.en[1],summary:t.en[2],steps:t.steps.map(n=>({id:n.id,scene:n.scene,target:n.target,title:n.en[0],body:n.en[1],instruction:n.en[2]}))}))};function Gy(){const{lang:t,localizePath:n}=ae(),r=t==="fr",i=Yy[t],s=i.reduce((a,o)=>a+o.steps.length,0);return e.jsx("section",{className:"h3s pp-tutorial-section",id:"tutoriel","aria-labelledby":"pp-tutorial-title",children:e.jsxs("div",{className:"h3-wrap",children:[e.jsx("div",{className:"h3-eyeb",children:r?"Votre c
1559ockpit Standard · en situation":"Your Standard cockpit · in action"}),e.jsx("h2",{className:"h3-h2",id:"pp-tutorial-title",children:r?"Suivez une cible de sa découverte à la signature":"Follow one target from discovery to signing"}),e.jsx("p",{className:"h3-lead",children:r?"Entrez dans le cockpit dâAsteria, un groupe de services B2B fictif, et faites vous-même chaque geste.":"Enter the cockpit of Asteria, a fictional B2B services group, and try every action yourself."}),e.jsxs(Ti,{className:"pp-tutorial-cta",to:n("/demo"),children:[e.jsx("span",{className:"pp-tutorial-cta-play","aria-hidden":"true"}),e.jsxs("span",{className:"pp-tutorial-cta-text",children:[e.jsx("b",{children:r?"Lancer la démo":"Start the demo"}),e.jsx("small",{children:r?`${i.length} actes · ${s} étapes · sans compte`:`${i.length} acts · ${s} steps · no account needed`})]}),e.jsx("span",{className:"pp-tutorial-cta-arrow","aria-hidden":"true",children:"â"})]})]})})}function Kx(){const[t,n]=m.useState(null);return ht({en:{title:"Proplace â We find the companies you should track, fund or acquire",description:"Stan, your AI Corporate Developer, reviews every company on your market each night, keeps the ones with the most synergies and writes down why he discarded the rest. You get 5 to 10 decisions a month, each with a detailed investment memo."},fr:{title:"Proplace â Nous trouvons les entreprises que vous devriez suivre, financer ou racheter",description:"Stan, votre AI Corporate Developer, passe en revue chaque nuit toutes les sociétés de votre marché, retient celles qui génèrent le plus de synergies et écrit pourquoi il écarte les autres. Vous recevez 5 à 10 décisions par mois, chacune avec un mémo dâinvestissement détaillé."}}),m.useEffect(()=>{try{ha()}catch{}},[]),m.useEffect(()=>{if(typeof window>"u"||window.location.hash!=="#decouvrir")return;const r=(new URLSearchParams(window.location.search).get("site")||"").trim();history.replaceState(null,"",window.location.pathname+window.location.search),n({site:r})},[]),e.jsxs(ul,{children:[e.jsx("style",{children:Cy}),e.jsx(zn,{}),e.jsxs("main",{className:"home3",children:[e.jsx(Vx,{}),e.jsx(Hx,{}),e.jsx(Gx,{}),e.jsx(Py,{}),e.jsx(Gy,{}),e.jsx(Wx,{}),e.jsx(Qx,{}),e.jsx(Zx,{})]}),e.jsx(Nt,{}),t&&e.jsx(Qr,{onClose:()=>n(null),initialWebsite:t.site})]})}function Wy(){const{lang:t}=ae(),n=t==="fr",[r,i]=m.useState(""),[s,a]=m.useState([]),o=()=>a([]),c=p=>{i(p);const u=p.trim().toLowerCase();if(u.length<2||/^\S+\.\S{2,}$/.test(u)){a([]);return}const g=u.replace(/[^a-z0-9-]/g,"");if(g.length<2){a([]);return}a(["com","fr","io","eu"].map(f=>({url:`https://${g}.${f}`})))},l=p=>{i(p.replace(/^https?:\/\//i,"")),o()},d=()=>{var u;const p=r.trim();try{if(/^\S+\.\S{2,}$/.test(p)){const g=/^https?:\/\//i.test(p)?p:"https://"+p;localStorage.setItem("ppmap:acquirerSite",g.slice(0,200));const f=g.replace(/^https?:\/\//i,"").replace(/^www\./i,"").split(/[/?#]/)[0].split(".")[0];localStorage.setItem("ppmap:acquirer",f?f.charAt(0).toUpperCase()+f.slice(1):"")}else p&&(localStorage.setItem("ppmap:acquirer",p.slice(0,120)),localStorage.removeItem("ppmap:acquirerSite"))}catch{}window.dispatchEvent(new CustomEvent("ppmap:open-gate")),(u=document.getElementById("demo"))==null||u.scrollIntoView({behavior:"smooth",block:"start"})};return e.jsxs("section",{className:"ph",children:[e.jsx("style",{children:Qy}),e.jsx("h1",{className:"ph-h1",children:n?"Nous trouvons vos prochaines cibles à acquérir.":"We find your next acquisition targets."}),e.jsx("p",{className:"ph-stan",children:n?e.jsxs(e.Fragment,{children:["Avec ",e.jsx("b",{children:"Stan"}),", notre AI Corporate Developer."]}):e.jsxs(e.Fragment,{children:["With ",e.jsx("b",{children:"Stan"}),", our AI Corporate Developer."]})}),e.jsxs("div",{className:"ph-row",children:[e.jsxs("div",{className:"ph-inwrap",children:[e.jsx("input",{value:r,maxLength:300,placeholder:n?"Le site web de votre entreprise (lâacquéreur) â ex : cerfrance.fr":"Your company website (the acquirer) â e.g. cerfrance.fr",onChange:p=>c(p.target.value),onKeyDown:p=>{p.key==="Enter"&&(o(),d()),p.key==="Escape"&&o()},onBlur:()=>window.setTimeout(o,200)}),s.length>0&&e.jsxs("div",{className:"ph-sugs",children:[e.jsx("p",{className:"ph-sugs-h",children:n?"Votre site, câest lequel ?":"Which one is your site?"}),s.map(p=>{const u=p.url.replace(/^https?:\/\//i,"").replace(/\/$/,"").split("/")[0];return e.jsxs("button",{type:"button",onMouseDown:g=>{g.preventDefault(),l(p.url)},children:[e.jsx("img",{src:`https://www.google.com/s2/favicons?domain=${encodeURIComponent(u)}&sz=64`,alt:"",loading:"lazy"}),e.jsx("span",{className:"ph-sug-t",children:e.jsx("b",{children:u.slice(0,42)})}),e.jsx("i",{children:"âµ"})]},p.url)})]})]}),e.jsx("button",{type:"button",onClick:d,children:n?"Voir un aperçu de deal flow â":"See a deal flow preview â"})]}),e.jsxs("div",{className:"ph-how",children:[e.jsx("p",{children:n?e.jsx(e.Fragment,{children:"Stan étudie votre activité, en déduit vos critères dâacquisition et construit votre deal flow : il retient â ou écarte â chaque cible en justifiant sa décision (onglet Retenues), puis rédige pour les meilleures un mémo chiffrant les synergies (onglet Analysées)."}):e.jsx(e.Fragment,{children:"Stan studies your business, derives your acquisition criteria and builds your deal flow: it keeps â or discards â every target with its reasoning (Kept tab), then writes for the best ones a memo quantifying the synergies (Analysed tab)."})}),e.jsx("p",{children:n?e.jsxs(e.Fragment,{children:["Tous les lundis, nous vous présentons les meilleures, que ",e.jsx("b",{children:"vous tranchez"})," par oui ou non (onglet à trancher). Vos oui passent en Validées â et améliorent Stan."]}):e.jsxs(e.Fragment,{children:["Every Monday, we present you the best ones, and ",e.jsx("b",{children:"you decide"})," yes or no (To decide tab). Your yeses move to Validated â and make Stan better."]})}),e.jsx("p",{children:n?e.jsx(e.Fragment,{children:"Résultat : une veille M&A qui couvre lâintégralité de votre marché en quelques mois â à lâaffût de toute nouvelle opportunité dès quâelle émerge, en temps réel."}):e.jsx(e.Fragment,{children:"The result: M&A coverage of your entire market within a few months â catching every new opportunity the moment it emerges, in real time."})}),e.jsx("p",{className:"ph-motto",children:n?"Stan travaille. Nous vérifions. Vous décidez.":"Stan works. We verify. You decide."})]}),e.jsxs("div",{className:"ph-logos",children:[e.jsx("img",{src:"/trust-logos.png",alt:"Références",loading:"lazy"}),e.jsx("p",{children:n?"Notre équipe a déployé du capital à tous les stades dâinvestissement (Seed, Venture, Growth, LBO, M&A) pour des grands comptes, des startups de premier plan et des fonds dâinvestissement de référence.":"Our team has deployed capital across every investment stage (Seed, Venture, Growth, LBO, M&A) for large corporates, leading startups and reference investment funds."})]})]})}const Qy=` 1560.ph{max-width:960px;margin:0 auto;padding:64px 24px 34px;text-align:center} 1561.ph-h1{font-size:clamp(34px,5.2vw,54px);font-weight:800;line-height:1.08;margin:0 0 10px;letter-spacing:-.03em} 1562.ph-h1 em{font-style:normal;color:var(--green-dk,#12A150)} 1563.ph-stan{font-size:16px;font-weight:700;color:var(--sub,#444);margin:0 0 22px} 1564.ph-stan b{color:var(--green-dk,#12A150)} 1565.ph-how{max-width:780px;margin:26px auto 0;text-align:center;display:grid;gap:12px} 1566.ph-how p{font-size:14.5px;line-height:1.7;color:var(--sub,#444);margin:0} 1567.ph-how b{color:var(--ink,#16233A)} 1568.ph-motto{font-weight:800;color:var(--ink,#16233A);text-align:center;font-size:15px} 1569.ph-row{display:flex;gap:10px;max-width:760px;margin:0 auto} 1570.ph-inwrap{position:relative;flex:1;display:flex} 1571.ph-inwrap input{width:100%} 1572.ph-row input{flex:1;border:2px solid var(--ink,#16233A);background:#F4F4F1;padding:15px 16px;font-size:15px;font-family:inherit;border-radius:12px} 1573.ph-sugs{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid var(--line,#E3E8F0);border-radius:14px;box-shadow:0 24px 60px rgba(10,10,10,.18);overflow:hidden;z-index:30;text-align:left;padding:6px} 1574.ph-sugs-h{margin:4px 10px 6px;font-size:12px;font-weight:600;
1574color:var(--mid,#999)} 1575.ph-sugs button{display:flex;align-items:center;gap:11px;width:100%;border:none;background:none;padding:9px 10px;cursor:pointer;font-family:inherit;text-align:left;border-radius:10px} 1576.ph-sugs button:hover{background:#F1F1EE} 1577.ph-sugs button img{width:22px;height:22px;border-radius:6px;flex:0 0 auto;background:#f1f1ee} 1578.ph-sug-t{display:flex;flex-direction:column;gap:1px;min-width:0} 1579.ph-sugs b{font-size:13.5px;color:var(--ink,#16233A);white-space:nowrap;overflow:hidden;text-overflow:ellipsis} 1580.ph-sug-t span{font-size:11.5px;color:var(--mid,#888);white-space:nowrap;overflow:hidden;text-overflow:ellipsis} 1581.ph-sugs button i{margin-left:auto;font-style:normal;font-size:12px;color:var(--mid,#bbb);opacity:0;transition:opacity .12s} 1582.ph-sugs button:hover i{opacity:1;color:var(--green-dk,#12A150)} 1583.ph-logos{margin:30px auto 0;max-width:880px} 1584.ph-logos img{max-width:480px;width:100%;height:auto;opacity:.45;filter:grayscale(1);display:block;margin:0 auto} 1585.ph-logos p{font-style:italic;font-size:12px;line-height:1.6;color:var(--mid,#999);margin:12px auto 0;max-width:860px} 1586.ph-row input:focus{outline:none;border-color:var(--green,#12A150);background:#fff} 1587.ph-row button{border:none;background:var(--green,#12A150);color:#fff;font-size:15px;font-weight:800;padding:0 22px;cursor:pointer;font-family:inherit;border-radius:12px;white-space:nowrap} 1588.ph-row button:hover{background:var(--green-dk,#0E7F3F)} 1589.ph-hint{font-size:13px;line-height:1.7;color:var(--mid,#777);margin:12px 0 0} 1590.ph-proof{font-size:13px;font-weight:700;color:var(--ink,#16233A);margin:34px 0 0} 1591@media(max-width:700px){.ph{padding-top:40px}.ph-row{flex-direction:column}.ph-row button{padding:14px}} 1592`,Zy={live:"LIVE",liveQuiet:t=>`Aucun signal ouvert en ${t} â élargissez à un autre continent.`,goalSourced:t=>`<b>${t}</b> sociétés ont été sourcées ce matin par nos moteurs.`,goalTreat:"â¶ Les traiter",goalContinue:t=>`â¶ Continuer (${t})`,goalDone:(t,n)=>`<b>${t}</b> sur ${n} traitées.`,goalCleared:'<span class="ok">â Pile du matin vidée</span> â rien de nouveau jusquâà demain.',goalTodo:t=>`<b>${t}</b> sociétés repérées que Stan nâa pas encore évaluées â terminez le travail.`,goalExtra:t=>`+ ${t} hors pile`,showMap:"Déplier la carte â",hideMap:"Replier la carte â",period:"Période de détection",dates:["Aujourdâhui","7 derniers jours","30 derniers jours","Depuis toujours"],statusCap:"Statut chez Stan",statusAll:"Tout",statusTodo:"En file",statusKeep:"â Retenues",statusPending:"ð à trancher",statusDrop:"â Ãcartées",refine:"Affiner",fSignal:"ð¯ Signal actif",fSector:"Secteur",fMarket:"Marché",fCountry:"Pays",fEngine:"Moteur",fStage:"Stade",fDay:t=>`ð ${t}`,fDayOff:"Voir tout",clear:t=>`Effacer (${t})`,clearTitle:(t,n)=>`Revenir à la vue complète â ${t} sociétés en ${n}`,alertBtn:"ð Alerte email",alertCreate:"ð Créer lâalerte",alertReady:"Vos critères sont prêts ? Recevez-les chaque matin par email.",fpNone:"Tout décocher",fpClose:"Fermer â",fpSigTitle:"Signal actif â fenêtre de 7 jours",fpSigAll:"<b>Tout signal encore ouvert</b>",evalPh:"Collez une URL ou un nom de société â ou cliquez « Ãvaluer » sur une ligne",evalWaiting:"En attente",evalUrl:"ð URL détectée",evalName:"ð¢ Nom détecté",evalGo:"â¡ Ãvaluer",evalMulti:"ï¼ Ãvaluer plusieurs à la fois",evalList:"â¡ Ãvaluer la liste",bulkPh:`Une société par ligne (max 15) 1593pennylane.com 1594Tiime 1595dougs.fr`,bulkCount:t=>`${t} / 15 lignes`,kept:"Retenue",dropped:"Ãcartée",pending:"à trancher",quota:t=>`Quota du jour atteint â ${t} évaluations non lancées. Le quota se recharge demain.`,why:"Pourquoi :",seeSpace:t=>`â Voir dans vos ${t}`,session:(t,n)=>`Cette session · <b class="k">${t}</b> retenues · <b class="d">${n}</b> écartées`,seeMySpace:"Voir dans mon espace â",toSend:"à envoyer à lâIA",keptByStan:"retenues par Stan",droppedByStan:"écartées par Stan",pendingByStan:"à trancher",pileCtx:(t,n)=>`Pile du matin · tous continents · ${t} sourcées`+(n?` · ${n} déjà évaluée${n>1?"s":""}`:""),listCtx:(t,n,r)=>`${t.toUpperCase()} · ${n}`+(r?` · ${r} déjà évaluée${r>1?"s":""}
1595`:""),wins:["AUJOURD'HUI","7 DERNIERS JOURS","30 DERNIERS JOURS","TOUTES PÃRIODES"],groupBy:"Grouper par",gEngine:"Moteur",gNone:"Rien",exitPile:"â quitter la pile",chain:"â© Enchaîner",chainN:t=>`â© Enchaîner les ${t}`,sigStrip:t=>`ð¯ <span>${t}</span> cibles avec un signal fort exploitable`,sigStripSub:"leur contexte vient de bouger â fenêtre de tir ouverte",sigStripGo:"Ne voir que celles-là ",colCountry:"Pays",colName:"Société & description",colAmount:"Montant",colStage:"Stade",colSignal:"Signal",more:(t,n)=>`Afficher ${t} de plus`,acqSee:t=>`Voir ce que rachète ${t}`,acqOn:t=>`Rachats de ${t}`,acqClear:"Tous les acheteurs",moreMeta:(t,n)=>`${t} / ${n}`,void:"Aucune société dans ce périmètre",voidStatus:"Aucune société dans cet état",allDone:"Périmètre traité",allDoneSub:"Tout est parti à lâIA. Ãlargissez la période ou les critères.",pileDone:"Pile du matin vidée",pileDoneSub:"Tout est parti à lâIA. Revenez demain.",detected:(t,n)=>`Détectée ${t} · ${n}`,today:"AUJOURD'HUI",daysAgo:t=>t===0?"AUJOURD'HUI":t<=30?`IL Y A ${t} J`:`Il y a ${Math.round(t/30)} mois`,desc:"Description",how:"Comment elle a été repérée",memo:"Mémo Proplace · sans évaluation",verdictCap:"Verdict",noSignal:"aucun signal dans sa fenêtre",signaledOn:t=>`signalé le ${t}`,win7:t=>`fenêtre ${t}`,lastDay:"Dernier jour",daysLeft:t=>`${t} jours`,seeSource:"voir la source â",source:t=>`source : ${t}`,evalArrow:"â¡ Ãvaluer â",launchEval:"â¡ Lancer lâévaluation",skip:"â Passer",closeBtn:"Fermer",chainDone:"Série terminée",chainDoneSub:t=>`${t} sociétés envoyées à lâIA dâaffilée.`,finished:"Terminé",registered:t=>`Verdict â enregistré dans vos ${t}`,alertTitle:"Recevoir ces critères chaque matin",amRows:{continent:"CONTINENT",since:"DÃTECTÃE DEPUIS",signal:"SIGNAL",engines:"MOTEURS",sectors:"SECTEURS",countries:"PAYS",stages:"STADES"},amAllEngines:"<em>Tous les moteurs</em>",amAllSectors:"<em>Tous les secteurs</em>",amAllCountries:"<em>Tous les pays du continent</em>",amAllStages:"<em>Tous les stades</em>",amAnySignal:"<em>Avec ou sans signal actif</em>",amOnlyOpen:"Uniquement les signaux <b>encore dans leur fenêtre</b> de 7 jours",amSince:["Aujourdâhui","Les 7 derniers jours","Les 30 derniers jours","Depuis toujours"],amMail:"[email protected]",amActivate:"ð Activer",amNote:(t,n)=>
1595`Chaque matin à 7 h, vous recevrez les nouvelles sociétés de vos <b>secteurs</b> et <b>pays</b> sélectionnés. Aujourdâhui, ce périmètre contient <b>${t}</b> sociétés, dont <b>${n}</b> avec un signal encore ouvert.`,amHonest:"Lâalerte couvre vos secteurs et vos pays. Les autres critères (moteur, stade, signal) affinent lâécran, pas lâemail.",amUrgency:"Un signal ne vit que <b>7 jours</b> : une levée repérée un lundi nâest plus une actualité le lundi suivant. Lâemail quotidien est le seul moyen de ne pas laisser une fenêtre se refermer.",amOk:"Alerte activée",amOkSub:t=>`Premier envoi demain à 7 h sur <b>${t}</b>.<br>Modifiable ou résiliable en un clic depuis lâemail.`,spaceTitle:"Votre espace â cibles évaluées",spEmpty:"Rien dans cet onglet pour lâinstant.",spNote:"Ces cibles sont enregistrées dans votre espace Proplace, onglets <b>Retenues</b> et <b>Ãcartées</b>, avec leur score et la raison du verdict.",score:t=>`${t}/100`,callHint:"Stan demande votre avis â tranchez :",callKeep:"â Retenir",callDrop:"â Ãcarter",analyse:"â¡ Analyser (mémo)",analyseSent:"Analyse demandée â le mémo arrive dans votre deal flow.",notLocated:"non localisées",loading:"Chargement du sourcingâ¦",loadError:"Impossible de charger le sourcing â réessayez.",retry:"Réessayer",evaluating:(t,n,r)=>`${t}/${n} · ${r}`,demoUrl:"proplace.co/cibles/",demoUrlB:"votre-entreprise"},Ky={live:"LIVE",liveQuiet:t=>`No open signal in ${t} â try another continent.`,goalSourced:t=>`<b>${t}</b> companies were sourced this morning by our engines.`,goalTreat:"â¶ Process them",goalContinue:t=>`â¶ Continue (${t})`,goalDone:(t,n)=>`<b>${t}</b> of ${n} processed.`,goalCleared:'<span class="ok">â Morning pile cleared</span> â nothing new until tomorrow.',goalTodo:t=>`<b>${t}</b> companies spotted that Stan hasnât evaluated yet â finish the job.`,goalExtra:t=>`+ ${t} outside the pile`,showMap:"Show map â",hideMap:"Fold map â",period:"Detection period",dates:["Today","Last 7 days","Last 30 days","All time"],statusCap:"Status with Stan",statusAll:"All",statusTodo:"Queued",statusKeep:"â Kept",statusPending:"ð To decide",statusDrop:"â Discarded",refine:"Refine",fSignal:"ð¯ Active signal",fSector:"Sector",fMarket:"Market",fCountry:"Country",fEngine:"Engine",fStage:"Stage",fDay:t=>`ð ${t}`,fDayOff:"See everything",clear:t=>`Clear (${t})`,clearTitle:(t,n)=>`Back to the full view â ${t} companies in ${n}`,alertBtn:"ð Email alert",alertCreate:"ð Create the alert",alertReady:"Criteria ready? Get them every morning by email.",fpNone:"Uncheck all",fpClose:"Close â",fpSigTitle:"Active signal â 7-day window",fpSigAll:"<b>Any signal still open</b>",evalPh:"Paste a URL or a company name â or click âEvaluateâ on a row",evalWaiting:"Waiting",evalUrl:"ð URL detected",evalName:"ð¢ Name detected",evalGo:"â¡ Evaluate",evalMulti:"ï¼ Evaluate several at once",evalList:"â¡ Evaluate the list",bulkPh:`One company per line (max 15) 1596pennylane.com 1597Tiime 1598dougs.fr`,bulkCount:t=>`${t} / 15 lines`,kept:"Kept",dropped:"Discarded",pending:"To decide",quota:t=>`Daily quota reached â ${t} evaluations not started. It resets tomorrow.`,why:"Why:",seeSpace:t=>`â See in your ${t}`,session:(t,n)=>`This session · <b class="k">${t}</b> kept · <b class="d">${n}</b> discarded`,seeMySpace:"See my space â",toSend:"to send to the AI",keptByStan:"kept by Stan",droppedByStan:"discarded by Stan",pendingByStan:"to decide",pileCtx:(t,n)=>`Morning pile · all continents · ${t} sourced`+(n?` · ${n} already evaluated`:""),listCtx:(t,n,r)=>`${t.toUpperCase()} · ${n}`+(r?` · ${r} already evaluated`:""),wins:["TODAY","LAST 7 DAYS","LAST 30 DAYS","ALL TIME"],groupBy:"Group by",gEngine:"Engine",gNone:"None",exitPile:"â leave the pile",chain:"â© Chain",chainN:t=>`â© Chain all ${t}`,sigStrip:t=>`ð¯ <span>${t}</span> targets with a strong actionable signal`,sigStripSub:"their context just moved â firing window open",sigStripGo:"Show only those",colCountry:"Country",colName:"Company & description",colAmount:"Amount",colStage:"Stage",colSignal:"Signal",more:(t,
1598n)=>`Show ${t} more`,acqSee:t=>`See what ${t} is buying`,acqOn:t=>`${t}'s acquisitions`,acqClear:"All buyers",moreMeta:(t,n)=>`${t} / ${n}`,void:"No company in this scope",voidStatus:"No company in this state",allDone:"Scope processed",allDoneSub:"Everything went to the AI. Widen the period or the criteria.",pileDone:"Morning pile cleared",pileDoneSub:"Everything went to the AI. Come back tomorrow.",detected:(t,n)=>`Detected ${t} · ${n}`,today:"Today",daysAgo:t=>t===0?"TODAY":t<=30?`${t} d ago`:`${Math.round(t/30)} mo ago`,desc:"Description",how:"How it was spotted",memo:"Proplace memo · no evaluation",verdictCap:"Verdict",noSignal:"no signal in its window",signaledOn:t=>`signalled on ${t}`,win7:t=>`window ${t}`,lastDay:"Last day",daysLeft:t=>`${t} days`,seeSource:"see the source â",source:t=>`source: ${t}`,evalArrow:"â¡ Evaluate â",launchEval:"â¡ Run the evaluation",skip:"â Skip",closeBtn:"Close",chainDone:"Streak finished",chainDoneSub:t=>`${t} companies sent to the AI in a row.`,finished:"Done",registered:t=>`Verdict â saved in your ${t}`,alertTitle:"Get these criteria every morning",amRows:{continent:"CONTINENT",since:"DETECTED SINCE",signal:"SIGNAL",engines:"ENGINES",sectors:"SECTORS",countries:"COUNTRIES",stages:"STAGES"},amAllEngines:"<em>All engines</em>",amAllSectors:"<em>All sectors</em>",amAllCountries:"<em>All countries of the continent</em>",amAllStages:"<em>All stages</em>",amAnySignal:"<em>With or without an active signal</em>",amOnlyOpen:"Only signals <b>still inside</b> their 7-day window",amSince:["Today","Last 7 days","Last 30 days","All time"],amMail:"[email protected]",amActivate:"ð Activate",amNote:(t,n)=>`Every morning at 7am, youâll get the new companies of your selected <b>sectors</b> and <b>countries</b>. Today this scope holds <b>${t}</b> companies, <b>${n}</b> with a still-open signal.`,amHonest:"The alert covers your sectors and countries. The other criteria (engine, stage, signal) refine the screen, not the email.",amUrgency:"A signal only lives <b>7 days</b>: a raise spotted on Monday is old news the next Monday. The daily email is the only way not to miss a closing window.",amOk:"Alert activated",amOkSub:t=>`First send tomorrow at 7am to <b>${t}</b>.<br>Editable or cancellable in one click from the email.`,spaceTitle:"Your space â evaluated targets",spEmpty:"Nothing in this tab yet.",spNote:"These targets are saved in your Proplace space, <b>Kept</b> and <b>Discarded</b> tabs, with their score and the verdict reason.",score:t=>`${t}/100`,callHint:"Stan asks for your call â decide:",callKeep:"â Keep",callDrop:"â Discard",analyse:"â¡ Analyse (memo)",analyseSent:"Analysis requested â the memo will land in your deal flow.",notLocated:"not located",loading:"Loading the sourcingâ¦",loadError:"Could not load the sourcing â try again.",retry:"Retry",evaluating:(t,n,r)=>`${t}/${n} · ${r}`,demoUrl:"proplace.co/cibles/",demoUrlB:"your-company"},Jy={fr:Zy,en:Ky},$y=` 1599.atl{ 1600 --brand:#16A34A; --brand-d:#12833C; --brand-l:#DCFCE7; 1601 --blue:#2563EB; --bolt:#F59E0B; --red:#DC2626; 1602 --panel:#FFFFFF; --panel2:#F8FAFC; --panel3:#F1F5F9; 1603 --line:#E2E8F0; --line2:#CBD5E1; 1604 --ink:#0F172A; --muted:#64748B; --dim:#94A3B8; 1605 --sea:#E4EDF3; --land:#FFFFFF; --landline:#B2C2D0; --empty:#F1F5F9; --emptyline:#DCE4EB; 1606 --rail:240px; 1607 --r:5px; /* blocs et boutons de filtre */ 1608 --rs:3px; /* compteurs et étiquettes */ 1609 --ra:8px; /* boutons d'action */ 1610 --rb:12px; /* fenêtres modales */ 1611 --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace; 1612 --body:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; 1613} 1614.atl, .atl *{box-sizing:border-box} 1615.atl{height:100%;margin:0;overflow:hidden} 1616.atl{background:var(--panel2);color:var(--ink);font-family:var(--body);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased} 1617.atl button, .atl input, .atl textarea{font-family:inherit} 1618.atl, .atl *{scrollbar-width:thin;scrollbar-color:var(--line2) transparent} 1619.atl ::-webkit-scrollbar{width:11px;height:11px} 1620.atl ::-webkit-scrollbar-track{background:transparent} 1621.atl ::-webkit-scrollbar-thumb{background:var(--line2);border-radius:6px;border:3px solid var(--panel);background-clip:padding-box} 1622.atl ::-webkit-scrollbar-thumb:hover{background:var(--muted);border-width:2px} 1623.atl .app{display:flex;flex-direction:column;height:100dvh;overflow:hidden} 1624.atl /* ---- bandeau live ---- */ 1625.ticker{flex:none;display:flex;height:46px;background:#0B1220;color:#fff;border-bottom:1px solid #1E293B}
1626.atl .ticker .lbl{flex:none;display:flex;align-items:center;gap:9px;padding:0 17px;background:var(--red); 1627 font-family:var(--mono);font-size:10.5px;letter-spacing:.2em;font-weight:700; 1628 box-shadow:1px 0 0 rgba(255,255,255,.16)} 1629.atl .ticker .lbl .cnt{font-size:10px;letter-spacing:0;font-weight:700;background:rgba(255,255,255,.24); 1630 border-radius:var(--rs);padding:1px 7px;min-width:22px;text-align:center} 1631.atl .tk.quiet{color:#7E97B2;font-size:12.5px;cursor:default;border:0} 1632.atl .ticker .lbl i{width:7px;height:7px;border-radius:50%;background:#fff;animation:atl-blink 1.6s infinite} 1633@keyframes atl-blink{0%,100%{opacity:1}50%{opacity:.2}} 1634.atl .ticker .win{flex:1;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,transparent,#000 26px,#000 calc(100% - 26px),transparent)} 1635.atl .ticker .run{display:flex;width:max-content;animation:atl-roll 140s linear infinite} 1636.atl .ticker:hover .run{animation-play-state:paused} 1637@keyframes atl-roll{from{transform:translateX(0)}to{transform:translateX(-50%)}} 1638.atl .tk{display:flex;align-items:center;gap:11px;flex:none;padding:0 20px;height:46px;background:none;border:0; 1639 border-right:1px solid #22334A;white-space:nowrap;cursor:pointer;transition:background .12s} 1640.atl .tk:hover{background:#16233A} 1641.atl .tk .sig{flex:none} 1642.atl .tk .sigwin{margin:0;font-size:10.5px;color:#9FB6CA} 1643.atl .tk .sigwin .gg i{background:rgba(255,255,255,.18)} 1644.atl .tk .sigwin .gg i.on{background:#9FB6CA} 1645.atl .tk .sigwin.hot{color:#FCA5A5;font-weight:600} 1646.atl .tk .sigwin.hot .gg i.on{background:#FCA5A5} 1647.atl .tk .sigwin a{display:none} 1648.atl .tk .tkfl{width:21px;height:16px;object-fit:cover;border-radius:var(--rs);flex:none; 1649 box-shadow:0 0 0 1px rgba(255,255,255,.22)} 1650.atl .tk .who{display:flex;align-items:center;gap:7px;flex:none} 1651.atl .tk .co{font-weight:700;font-size:15px;color:#fff;letter-spacing:-.015em} 1652.atl .tk .what{font-size:12.5px;color:#AFC2D3} 1653.atl .tk .am{font-family:var(--mono);font-size:13px;color:#fff;font-weight:600; 1654 background:rgba(255,255,255,.09);border-radius:var(--rs);padding:3px 8px} 1655.atl .tk .mt{font-size:11px;color:#B7C9D8;border:1px solid rgba(255,255,255,.2);border-radius:var(--rs); 1656 padding:2px 8px;letter-spacing:.01em} 1657.atl .tk .tkgo{font-size:13px;color:#4A6379;transition:color .12s,transform .12s} 1658.atl .tk:hover .tkgo{color:#fff;transform:translateX(3px)} 1659.atl .tk.spent{opacity:.32} 1660.atl .tk.spent .co{color:#94A3B8} 1661.atl .tk .ty.sig{background:#F9A8D4} 1662.atl /* ---- barre du matin ---- */ 1663.goal{flex:none;display:flex;align-items:center;gap:9px 14px;padding:8px 14px;background:var(--panel); 1664 border-bottom:1px solid var(--line);flex-wrap:wrap} 1665.atl .gtxt{font-size:15px;font-weight:500;color:var(--ink)} 1666.atl .gtxt b{font-weight:700;font-size:17px} 1667.atl .gtxt .ok{color:var(--brand-d);font-weight:700} 1668.atl .gtxt a{color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:3px} 1669.atl .gtxt a:hover{color:var(--ink)} 1670.atl .pbar{flex:1;min-width:90px;max-width:200px;height:6px;background:var(--panel3);border-radius:99px;overflow:hidden} 1671.atl .pbar i{display:block;height:100%;width:0;background:var(--brand);border-radius:99px;transition:width .45s cubic-bezier(.22,1,.36,1)} 1672.atl .pilebtn{background:var(--ink);color:#fff;border:0;border-radius:var(--ra);padding:9px 16px;font-size:13px; 1673 font-weight:700;cursor:pointer;white-space:nowrap;flex:none} 1674.atl .pilebtn:hover{background:#000} 1675.atl .pilebtn[hidden]{display:none} 1676.atl .gxtra{font-size:12.5px;color:var(--muted)} 1677.atl .gspace{flex:1} 1678.atl /* ---- continents ---- */ 1679.conts{flex:none;display:flex;background:var(--panel);border-bottom:1px solid var(--line);overflow-x:auto} 1680.atl .cbtn{display:flex;align-items:center;gap:7px;background:none;border:0;border-bottom:2.5px solid transparent; 1681 padding:6px 14px;cursor:pointer;font-size:12.5px;color:var(--muted);white-space:nowrap} 1682.atl .cbtn:hover{background:var(--panel2);color:var(--ink)} 1683.atl .cbtn[aria-selected="true"]{color:var(--ink);font-weight:700;border-bottom-color:var(--ink)} 1684.atl .cbtn .n{font-family:var(--mono);font-size:9.5px;background:var(--panel3);border-radius:var(--rs);padding:1px 7px;color:var(--muted)} 1685.atl .cbtn.hint{background:var(--brand-l);color:var(--brand-d);font-weight:700} 1686.atl .cbtn.hint .n{background:var(--brand);color:#fff} 1687.atl .cbtn[aria-selected="true"] .n{background:var(--ink);color:#fff} 1688.atl .conts .side{margin-left:auto;display:flex;align-items:center;flex:none} 1689.atl .conts .side button{background:none;border:0;border-left:1px solid var(--line);padding:0 14px;height:100%; 1690 font-family:var(--mono);font-size:9px;letter-spacing:.1em;color:var(--muted);cursor:pointer} 1691.atl .conts .side button:hover{color:var(--ink)} 1692.atl /* ---- carte ---- */ 1693.mapzone{flex:1;min-width:0;position:relative;background:var(--sea);overflow:hidden} 1694.atl .mapzone svg{width:100%;height:100%;display:block}
1695.atl .ct path{fill:var(--land);stroke:var(--landline);stroke-width:.55;transition:fill .12s} 1696.atl .ct.empty path{fill:var(--empty);stroke:var(--emptyline)} 1697.atl .ct:hover path{fill:#F0F7FC} 1698.atl g.co{cursor:pointer;transition:opacity .16s} 1699.atl g.co circle.h{fill:#000;fill-opacity:0;pointer-events:all} 1700.atl /* zone de clic, .atl invisible */ 1701g.co circle.v{pointer-events:none;stroke:#fff;stroke-opacity:.92} 1702.atl g.co.off{opacity:.05;pointer-events:none} 1703.atl g.co.done circle.v{fill-opacity:.32;stroke-opacity:.4} 1704.atl g.co:hover circle.v{stroke:var(--ink);stroke-opacity:1} 1705.atl .ring{pointer-events:none;opacity:0} 1706.atl .ring.on{opacity:1} 1707.atl .hov{position:absolute;pointer-events:none;opacity:0;z-index:6;background:var(--ink);color:#fff;padding:5px 9px; 1708 border-radius:var(--r);font-family:var(--mono);font-size:10px;white-space:nowrap;transform:translate(-50%,-165%)} 1709.atl .hov.on{opacity:1} 1710.atl .legend{position:absolute;left:10px;bottom:9px;display:flex;align-items:center;gap:11px;z-index:4;opacity:.4; 1711 transition:opacity .15s;font-family:var(--mono);font-size:8.5px;letter-spacing:.08em;color:var(--ink)} 1712.atl .legend:hover{opacity:1} 1713.atl .legend span{display:flex;align-items:center;gap:5px} 1714.atl .legend i{width:7px;height:7px;border-radius:50%;background:var(--c)} 1715.atl .legend b{font-weight:600} 1716.atl /* ---- scène : carte + rail de filtres à droite ---- */ 1717.fzone{position:relative;flex:none;z-index:25;display:flex;flex-direction:column} 1718.atl .stage{display:flex;height:30vh;min-height:316px;max-height:38vh; 1719 border-bottom:1px solid var(--line);transition:height .2s} 1720.atl .stage.folded{height:auto;min-height:0} 1721.atl .stage.folded .mapzone{display:none} 1722.atl .frail{width:var(--rail);flex:none;background:var(--panel);border-left:1px solid var(--line); 1723 display:flex;flex-direction:column;gap:0;padding:11px 10px;overflow-y:auto;overflow-x:hidden} 1724.atl .stage.folded .frail{width:auto;flex:1;border-left:0;flex-direction:row;flex-wrap:wrap; 1725 align-items:center;overflow:visible;padding:9px 12px;gap:7px} 1726.atl /* tout revient sur une seule ligne : on neutralise les marges de la mise en colonne */ 1727.stage.folded .frail .cap{margin:0 1px 0 0;line-height:1;align-self:center} 1728.atl .stage.folded .frail .cap+*{margin-bottom:0} 1729.atl .stage.folded .frail .statusf{margin-bottom:0;flex-direction:row} 1730.atl .stage.folded .frail .dates, .atl .stage.folded .frail .fgrid{align-self:center} 1731.atl .stage.folded .frail .sep2{width:1px;height:20px;background:var(--line);flex:none;margin:0 3px} 1732.atl .frail .cap{font-family:var(--mono);font-size:7.5px;letter-spacing:.16em;color:var(--dim); 1733 padding:0 1px;line-height:1.4;margin-bottom:7px} 1734.atl .frail .cap+*{margin-bottom:15px} 1735.atl .frail .fgrid{margin-bottom:0} 1736.atl /* étiquette de signal */ 1737/* ===== étiquette de signal : une seule apparence, .atl partout ===== */ 1738.sig{display:inline-flex;align-items:center;gap:6px;background:var(--red);color:#fff;border-radius:var(--rs); 1739 padding:3px 9px;font-size:11px;font-weight:600;white-space:nowrap;line-height:1.5;letter-spacing:.01em; 1740 font-family:var(--body);border:0} 1741.atl .sig-lg{font-size:12.5px;padding:5px 12px;gap:7px} 1742.atl .sig-o{background:transparent;color:var(--red);box-shadow:inset 0 0 0 1px #F0B4B4} 1743.atl .sig-o:hover{box-shadow:inset 0 0 0 1px var(--red)} 1744.atl .sigwin{display:flex;align-items:center;gap:7px;margin-top:4px;font-style:normal; 1745 font-family:var(--body);font-size:10.5px;color:var(--muted);line-height:1} 1746.atl .sigwin .gg{display:flex;gap:2px;flex:none} 1747.atl .sigwin .gg i{width:5px;height:3px;border-radius:1px;background:var(--line2)} 1748.atl .sigwin .gg i.on{background:var(--muted)} 1749.atl .sigwin .lb{white-space:nowrap} 1750.atl .sigwin a{color:var(--dim);text-decoration:none;font-size:11px;line-height:1} 1751.atl .sigwin a:hover{color:var(--ink)} 1752.atl .sigwin.hot{color:var(--red);font-weight:600} 1753.atl .sigwin.hot .gg i.on{background:var(--red)} 1754.atl .sigwin a{color:inherit;text-decoration:none;border-bottom:1px dotted currentColor;opacity:.7} 1755.atl .sigwin a:hover{opacity:1} 1756.atl /* bandeau de tête : les signaux exploitables */ 1757.sigstrip{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#FEF2F2; 1758 border-bottom:1px solid #FCD9D9;flex-wrap:wrap} 1759.atl .sigstrip .t{font-size:13.5px;font-weight:700;color:#B91C1C} 1760.atl .sigstrip .s{font-size:12.5px;color:#9F5A5A} 1761.atl .sigstrip button{margin-left:auto;background:var(--red);color:#fff;border:0;border-radius:var(--ra); 1762 padding:7px 14px;font-size:12px;font-weight:700;cursor:pointer;white-space:nowrap} 1763.atl .sigstrip button:hover{filter:brightness(1.1)} 1764.atl .sigstrip[hidden]{display:none} 1765.atl /* bouton de filtre signal dans le rail */ 1766/* le filtre de signal a la couleur du signal, .atl mais le comportement d'une facette */ 1767.fbtn.fsig{border-color:#F0B4B4;
1767color:var(--red);grid-column:1 / -1} 1768.atl .fbtn.fsig:hover{border-color:var(--red)} 1769.atl .fbtn.fsig .cv{color:#E9A0A0} 1770.atl .fbtn.fsig .n{background:var(--red)} 1771.atl .fbtn.fsig[aria-expanded="true"]{background:var(--red);border-color:var(--red);color:#fff} 1772.atl .fbtn.fsig[aria-expanded="true"] .n{background:#fff;color:var(--red)} 1773.atl .opt .sig{pointer-events:none} 1774.atl .statusf{display:flex;flex-direction:column;gap:5px;margin-bottom:15px} 1775.atl .statusf[hidden]{display:none} 1776.atl .statusf button{display:flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--panel); 1777 border-radius:var(--r);padding:0 10px;height:28px;font-size:11.5px;color:var(--muted);cursor:pointer;text-align:left} 1778.atl .statusf button:hover{border-color:var(--line2);color:var(--ink)} 1779.atl .statusf button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:600} 1780.atl .statusf button b{margin-left:auto;font-family:var(--mono);font-size:9px;font-weight:700; 1781 background:var(--panel3);color:var(--muted);border-radius:var(--rs);padding:1px 6px} 1782.atl .statusf button[aria-pressed="true"] b{background:rgba(255,255,255,.22);color:#fff} 1783.atl .statusf{gap:5px} 1784.atl .stage.folded .statusf{flex-direction:row} 1785.atl .stage.folded .sigtypes{display:none} 1786.atl .dates{display:flex;flex-direction:column;flex:none;border:1px solid var(--line);border-radius:var(--r);overflow:hidden} 1787.atl .dates button{display:flex;align-items:center;gap:9px;width:100%;height:28px;padding:0 10px;background:var(--panel); 1788 border:0;border-bottom:1px solid var(--line);cursor:pointer;font-family:var(--body);font-size:11.5px; 1789 font-weight:600;color:var(--muted);text-align:left} 1790.atl .dates button:last-child{border-bottom:0} 1791.atl .dates button:hover{background:var(--panel2);color:var(--ink)} 1792.atl .dates button .rd{width:10px;height:10px;border-radius:50%;border:1.5px solid var(--line2);flex:none;position:relative} 1793.atl .dates button[aria-pressed="true"]{background:var(--ink);color:#fff} 1794.atl .dates button[aria-pressed="true"] .rd{border-color:#fff} 1795.atl .dates button[aria-pressed="true"] .rd::after{content:"";position:absolute;inset:2px;border-radius:50%;background:#fff} 1796.atl .dates button .dn{margin-left:auto;font-family:var(--mono);font-size:9.5px;color:var(--muted);font-weight:700; 1797 background:var(--panel3);border-radius:var(--rs);padding:1px 6px} 1798.atl .dates button[aria-pressed="true"] .dn{background:rgba(255,255,255,.22);color:#fff} 1799.atl .stage.folded .dates{flex-direction:row;align-items:center;gap:0;border-radius:var(--r)} 1800.atl .stage.folded .dates .dbh{display:none} 1801.atl .stage.folded .dates button{width:auto;height:28px;padding:0 11px;border-bottom:0; 1802 border-right:1px solid var(--line);white-space:nowrap;font-size:11.5px} 1803.atl .stage.folded .dates button:last-child{border-right:0} 1804.atl .frow{display:flex;gap:5px;flex-wrap:wrap;min-width:0} 1805.atl .frow .alertbtn{flex:1 1 84px} 1806.atl .frow .resetbtn{flex:0 0 auto} 1807.atl .fgrid{display:grid;grid-template-columns:1fr 1fr;gap:6px} 1808.atl .stage.folded .fgrid{display:flex;gap:4px} 1809.atl .stage.folded .fbtn.fsig{grid-column:auto} 1810.atl .fbtn{display:flex;align-items:center;gap:7px;background:var(--panel);border:1px solid var(--line); 1811 border-radius:var(--r);padding:0 10px;height:28px;cursor:pointer;font-family:var(--body);font-size:11.5px; 1812 font-weight:600;color:var(--muted);white-space:nowrap;overflow:hidden;text-align:left} 1813.atl .fbtn:hover{border-color:var(--line2);color:var(--ink)} 1814.atl .fbtn .sp{flex:1} 1815.atl .fbtn .cv{font-size:8px;color:var(--dim);transition:transform .14s} 1816.atl .fbtn .n{background:var(--ink);color:#fff;border-radius:var(--rs);padding:1px 6px; 1817 font-family:var(--mono);font-size:9px;font-weight:700} 1818.atl .fbtn .n[hidden]{display:none} 1819.atl .fbtn[aria-expanded="true"]{background:var(--ink);border-color:var(--ink);color:#fff} 1820.atl .fbtn[aria-expanded="true"] .cv{color:#fff;transform:rotate(-90deg)} 1821.atl .fbtn[aria-expanded="true"] .n{background:#fff;color:var(--ink)} 1822.atl .alertbtn{background:var(--brand);color:#fff;border:0;border-radius:var(--ra);height:30px;padding:0 10px;font-size:11.5px; 1823 font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:5px; 1824 white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0} 1825.atl .alertbtn:hover{background:var(--brand-d)} 1826.atl .resetbtn{display:none;align-items:center;gap:5px;background:var(--panel);border:1px dashed var(--line2); 1827 border-radius:var(--ra);
1827height:30px;padding:0 10px;font-family:var(--body);font-size:11.5px;font-weight:600; 1828 color:var(--muted);cursor:pointer;white-space:nowrap} 1829.atl .resetbtn.on{display:flex} 1830.atl .resetbtn:hover{border-style:solid;border-color:var(--ink);color:var(--ink)} 1831.atl .resetbtn .rot{display:inline-block;font-size:12px} 1832.atl .resetbtn.spin .rot{animation:atl-spin .5s ease} 1833@keyframes atl-spin{from{transform:rotate(0)}to{transform:rotate(-360deg)}} 1834.atl .frail .grow{flex:1} 1835.atl .stage.folded .frail .grow{display:none} 1836.atl /* ---- panneau déroulant multi-colonnes ---- */ 1837.fpanel{position:absolute;right:var(--rail);top:0;width:min(640px,calc(100% - var(--rail) - 10px)); 1838 background:var(--panel);border-left:1px solid var(--line2);border-right:1px solid var(--line2); 1839 border-bottom:1px solid var(--line2);box-shadow:-16px 6px 34px rgba(15,23,42,.16); 1840 display:none;flex-direction:column;max-height:min(52vh,430px);z-index:30} 1841.atl .fpanel.on{display:flex} 1842.atl /* carte repliée : le rail est horizontal, .atl le panneau redevient un déroulé pleine largeur */ 1843.stage.folded ~ .fpanel{right:0;left:0;top:100%;width:auto;border-left:0;border-right:0; 1844 box-shadow:0 20px 36px rgba(15,23,42,.16)} 1845.atl .fpanel .ph{display:flex;align-items:center;gap:10px;padding:9px 14px;border-bottom:1px solid var(--line);background:var(--panel2)} 1846.atl .fpanel .ph b{font-family:var(--mono);font-size:9.5px;letter-spacing:.16em} 1847.atl .fpanel .ph .sp{flex:1} 1848.atl .fpanel .ph button{background:none;border:0;font-family:var(--mono);font-size:9px;letter-spacing:.1em;color:var(--muted);cursor:pointer;padding:3px 6px} 1849.atl .fpanel .ph button:hover{color:var(--ink)} 1850.atl .fcols{flex:1;min-height:0;overflow:auto;padding:10px 14px;columns:3;column-gap:16px} 1851.atl .fcols.two{columns:2} 1852.atl .opt{width:100%;display:flex;align-items:center;gap:8px;padding:5px 6px;background:none;border:0;cursor:pointer; 1853 text-align:left;font-size:12px;color:var(--muted);border-radius:var(--r);break-inside:avoid} 1854.atl .opt:hover{background:var(--panel2);color:var(--ink)} 1855.atl .opt .bx{width:12px;height:12px;border:1.5px solid var(--line2);border-radius:var(--rs);flex:none;position:relative} 1856.atl .opt[aria-pressed="true"] .bx{background:var(--brand);border-color:var(--brand)} 1857.atl .opt[aria-pressed="true"] .bx::after{content:"";position:absolute;left:2.8px;top:.4px;width:3.6px;height:6.4px; 1858 border:solid #fff;border-width:0 1.6px 1.6px 0;transform:rotate(42deg)} 1859.atl .opt[aria-pressed="true"]{color:var(--ink);font-weight:600} 1860.atl .opt .l{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1} 1861.atl .opt .n{font-family:var(--mono);font-size:9px;color:var(--dim)} 1862.atl .fpanel .pf{border-top:1px solid var(--line);padding:10px 14px;background:var(--panel2);display:flex;align-items:center;gap:10px} 1863.atl .fpanel .pf .t{font-size:12px;color:var(--muted);flex:1} 1864.atl /* ---- numéro de méthode ---- */ 1865.no{width:21px;height:21px;border-radius:50%;background:var(--ink);color:#fff;display:inline-grid;place-items:center; 1866 font-family:var(--mono);font-size:11px;font-weight:700;flex:none} 1867.atl .no.g{background:var(--brand)} 1868.atl /* ---- à la demande ---- */ 1869.demand{flex:none;background:var(--panel2);border-top:1px solid var(--line); 1870 border-bottom:1px solid var(--line);padding:13px 14px} 1871.atl .drow{display:flex;align-items:center;gap:9px;flex-wrap:wrap} 1872.atl .dfield{flex:1;min-width:230px;position:relative;display:flex;align-items:center} 1873.atl .dfield input{width:100%;height:46px;background:var(--panel);border:1px solid var(--line2); 1874 border-radius:var(--ra);padding:0 100px 0 15px;font-size:15px;outline:none;transition:.14s; 1875 box-shadow:0 1px 2px rgba(15,23,42,.05)} 1876.atl .dfield input:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(22,163,74,.15)} 1877.atl .dfield.pulse input{animation:atl-pulse .7s ease} 1878@keyframes atl-pulse{0%{box-shadow:0 0 0 0 rgba(22,163,74,.45)}100%{box-shadow:0 0 0 12px rgba(22,163,74,0)}} 1879.atl .detect{position:absolute;right:13px;font-family:var(--mono);font-size:8.5px;letter-spacing:.1em;background:var(--panel3); 1880 color:var(--muted);border-radius:var(--rs);padding:3px 8px;pointer-events:none} 1881.atl .detect.url{background:var(--brand-l);color:var(--brand-d)} 1882.atl .evalbtn{position:relative;overflow:hidden;background:var(--brand);color:#fff;border:0;border-radius:var(--ra); 1883 height:46px;padding:0 24px;font-size:15px;font-weight:700;box-shadow:0 1px 2px rgba(15,23,42,.08);cursor:pointer;flex:none;display:flex;align-items:center;gap:8px} 1884.atl .evalbtn:hover{background:var(--brand-d)} 1885.atl .evalbtn[disabled]{opacity:.6;cursor:default} 1886.atl .evalbtn .fill{position:absolute;
1886left:0;top:0;bottom:0;width:0;background:rgba(255,255,255,.28)} 1887.atl .evalbtn.loading .fill{width:100%;transition:width 1.15s linear} 1888.atl .dmulti{background:none;border:0;font-size:12px;color:var(--muted);cursor:pointer;text-decoration:underline;text-underline-offset:3px;flex:none} 1889.atl .dmulti:hover{color:var(--brand-d)} 1890.atl .bulk{display:none;margin-top:10px;gap:9px;align-items:flex-start} 1891.atl .bulk.on{display:flex} 1892.atl .bulk textarea{flex:1;min-height:118px;overflow:hidden;border:1.5px solid var(--line2);border-radius:var(--ra); 1893 padding:11px 13px;font-size:13.5px;line-height:1.7;resize:none;outline:none;font-family:var(--mono)} 1894.atl .bulk textarea:focus{border-color:var(--brand)} 1895.atl .bulk .side{display:flex;flex-direction:column;gap:6px;flex:none;width:180px} 1896.atl .bulk .hint{font-family:var(--mono);font-size:8.5px;letter-spacing:.08em;color:var(--dim);text-align:center} 1897.atl /* bande de résultat sous le champ */ 1898.result{display:none;margin-top:10px;border-radius:var(--r);border:1.5px solid var(--c);background:var(--bgc); 1899 padding:11px 14px;align-items:center;gap:14px;flex-wrap:wrap;animation:atl-pop .22s ease} 1900.atl .result.on{display:flex} 1901@keyframes atl-pop{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}} 1902.atl .result .vv{display:flex;align-items:center;gap:8px;flex:none} 1903.atl .result .vp{font-family:var(--mono);font-size:10px;letter-spacing:.14em;font-weight:700;color:#fff; 1904 background:var(--c);border-radius:var(--rs);padding:5px 10px} 1905.atl .result .vs{font-family:var(--mono);font-size:17px;font-weight:700;color:var(--c)} 1906.atl .result .vs s{text-decoration:none;font-size:10px;color:var(--muted)} 1907.atl .result .rn{font-weight:700;font-size:14px} 1908.atl .result .rr{flex:1;min-width:180px;font-size:12.5px;color:var(--muted)} 1909.atl .result .rr b{color:var(--ink);font-weight:600} 1910.atl .result .go{background:var(--c);color:#fff;border:0;border-radius:var(--ra);padding:8px 13px;font-size:11.5px; 1911 font-weight:700;cursor:pointer;white-space:nowrap} 1912.atl .tally{display:flex;align-items:center;gap:10px;margin-top:9px;font-family:var(--mono);font-size:9.5px; 1913 letter-spacing:.08em;color:var(--dim);flex-wrap:wrap} 1914.atl .tally b{color:var(--ink);font-weight:700;font-size:12px} 1915.atl .tally .k{color:var(--brand-d)} 1916.atl .tally .d{color:var(--red)} 1917.atl .tally a{color:var(--muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer} 1918.atl .tally a:hover{color:var(--ink)} 1919.atl /* modale critères */ 1920.mcard .fgrp{margin-bottom:14px} 1921.atl .mcard .fgrp label{display:block;font-size:12.5px;font-weight:600;margin-bottom:5px} 1922.atl .mcard .fgrp input{width:100%;border:1.5px solid var(--line2);border-radius:var(--ra);padding:11px 13px;font-size:14px;outline:none} 1923.atl .mcard .fgrp input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-l)} 1924.atl .mcard .fgrp .h{font-size:11.5px;color:var(--muted);margin-top:4px} 1925.atl .mcard .lead{font-size:13.5px;line-height:1.55;color:var(--ink);margin:0 0 16px} 1926.atl .mcard .lead b{font-weight:700} 1927.atl .mcard .ctx{background:var(--panel3);border-left:3px solid var(--brand);padding:10px 13px;border-radius:0 5px 5px 0; 1928 font-size:12.5px;margin-bottom:14px} 1929.atl .mcard .opt-more{background:none;border:0;color:var(--muted);font-size:12px;cursor:pointer;text-decoration:underline; 1930 text-underline-offset:3px;padding:0;margin-bottom:14px} 1931.atl .mcard .note{font-size:12px;color:var(--muted);margin:0 0 14px} 1932.atl .mcard .cta{width:100%;justify-content:center;padding:14px;font-size:14.5px} 1933.atl /* ---- sources ---- */ 1934.groupbar{display:flex;align-items:center;gap:4px;margin-left:auto;flex:none} 1935.atl .groupbar .gl{font-family:var(--mono);font-size:7.5px;letter-spacing:.16em;color:var(--dim);margin-right:3px} 1936.atl .groupbar button{font-size:11.5px;background:var(--panel);border:1px solid var(--line);border-radius:var(--r); 1937 padding:5px 11px;cursor:pointer;color:var(--muted)} 1938.atl .groupbar button:hover{border-color:var(--line2);color:var(--ink)} 1939.atl .groupbar button[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:#fff;font-weight:600} 1940.atl .groupbar[hidden]{display:none} 1941.atl .subh{padding:9px 14px 7px;border-bottom:1px solid var(--line);background:#FBFDFE} 1942.atl .subh b{display:block;font-size:12.5px;font-weight:700} 1943.atl .subh span{font-family:var(--mono);font-size:9px;letter-spacing:.06em;color:var(--dim)} 1944.atl /* ---- liste ---- */ 1945.listhead{flex:none;display:flex;align-items:baseline;gap:9px;padding:7px 14px;background:var(--panel2); 1946 border-bottom:1px solid var(--line);overflow:hidden} 1947.atl .listhead .main{font-size:13.5px;font-weight:600;color:var(--ink);white-space:nowrap;flex:none} 1948.atl .listhead .main b{font-size:17px;font-weight:700;letter-spacing:-.01em} 1949.atl .listhead .dot{color:var(--line2);flex:none} 1950.atl .listhead .ctx{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;color:var(--dim); 1951 white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1 1 auto} 1952.atl .listhead .chain{align-self:center;flex:none;margin-left:9px} 1953.atl .exitpile{background:none;border:1px solid var(--line2);border-radius:var(--r);padding:5px 10px; 1954 font-family:var(--mono);font-size:8.5px;letter-spacing:.1em;color:var(--muted);cursor:pointer;align-self:center} 1955.atl .exitpile:hover{border-color:var(--red);color:var(--red)} 1956.atl .exitpile[hidden]{display:none} 1957.atl /* aperçu de l'espace */ 1958.sp-tabs{display:flex;gap:6px;margin-bottom:14px} 1959.atl .sp-tab{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:var(--ra);padding:8px 13px; 1960 font-size:12.5px;font-weight:600;background:var(--panel);cursor:pointer} 1961.atl .sp-tab[aria-selected="true"]{background:var(--c);border-color:var(--c);color:#fff} 1962.atl .sp-row{display:flex;gap:12px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line)} 1963.atl .sp-row:last-child{border-bottom:0} 1964.atl .sp-row .sc{font-family:var(--mono);font-size:13px;font-weight:700;color:var(--c);flex:none;width:34px} 1965.atl .sp-row .nm{font-weight:700;font-size:13.5px} 1966.atl .sp-row .rr{font-size:12px;color:var(--muted);margin-top:2px} 1967.atl .sp-empty{padding:26px;text-align:center;font-size:13px;color:var(--muted)} 1968.atl .chain{margin-left:auto;background:var(--ink);color:#fff;border:0;border-radius:var(--ra);padding:8px 16px;font-size:12.5px; 1969 font-weight:700;cursor:pointer;display:flex;align-items:center;gap:7px} 1970.atl .chain:hover{background:#000} 1971.atl .chain .b{color:var(--brand)} 1972.atl .list{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;background:var(--panel)} 1973.atl .row>*{min-width:0} 1974.atl .grp-h{display:flex;align-items:center;gap:10px;padding:8px 14px;background:var(--panel3);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:3} 1975.atl .grp-h .ic{width:24px;height:24px;border-radius:var(--r);background:var(--ink);color:#fff;display:grid;place-items:center;font-size:12px} 1976.atl .grp-h .t{font-weight:700;font-size:13px} 1977.atl .grp-h .s{font-family:var(--mono);font-size:9px;letter-spacing:.08em;color:var(--muted)} 1978.atl .grp-h .go{margin-left:auto;background:var(--panel);border:1px solid var(--line2);border-radius:var(--ra);padding:6px 12px; 1979 font-size:11.5px;font-weight:600;cursor:pointer} 1980.atl .grp-h .go:hover{background:var(--ink);color:#fff;border-color:var(--ink)} 1981.atl .row, .atl .cols{display:grid; 1982 grid-template-columns:11px 30px minmax(280px,1fr) 92px 86px 178px 108px; 1983 gap:12px;align-items:center;padding:6px 14px} 1984.atl /* le nom et sa description sur la même ligne, .atl rien entre les deux */ 1985.nd{min-width:0;display:flex;align-items:baseline;gap:9px} 1986.atl .nd .rnm{font-weight:700;font-size:13.5px;flex:none;max-width:44%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap} 1987.atl .nd .rds{font-size:12.5px;color:var(--muted);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap} 1988.atl .c-amt{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--ink);text-align:right} 1989.atl .c-amt.none{color:var(--dim);font-weight:400} 1990.atl .c-flag{display:flex;align-items:center;justify-content:center} 1991.atl .c-flag img{width:24px;height:18px;object-fit:cover;border-radius:var(--rs);box-shadow:0 0 0 1px rgba(15,23,42,.12)} 1992.atl .c-flag .em{font-size:16px} 1993.atl .row{border-bottom:1px solid var(--line);cursor:pointer} 1994.atl /* en-tête de colonnes, .atl triable */ 1995.cols{flex:none;padding:0 14px;background:var(--panel2);border-bottom:1px solid var(--line);align-items:stretch} 1996.atl .cols>*{display:flex;align-items:center;font-family:var(--mono);font-size:8px;letter-spacing:.14em; 1997 color:var(--dim);background:none;border:0;padding:5px 0;text-align:left;min-width:0}
1998.atl .cols button{cursor:pointer;gap:4px} 1999.atl .cols button:hover{color:var(--ink)} 2000.atl .cols button .ar{opacity:0;font-size:9px} 2001.atl .cols button[aria-sort]:not([aria-sort="none"]){color:var(--ink);font-weight:700} 2002.atl .cols button[aria-sort]:not([aria-sort="none"]) .ar{opacity:1} 2003.atl /* drapeau */ 2004.c-flag{display:flex;align-items:center;gap:5px;min-width:0} 2005.atl .c-flag .fl{font-size:15px;line-height:1} 2006.atl .c-flag .cc{font-family:var(--mono);font-size:8.5px;letter-spacing:.06em;color:var(--dim)} 2007.atl .c-stade{font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;color:var(--muted); 2008 overflow:hidden;text-overflow:ellipsis;white-space:nowrap} 2009.atl /* reste à afficher dans un groupe */ 2010.moregrp{width:100%;padding:11px 14px;background:var(--panel2);border:0;border-bottom:1px solid var(--line); 2011 font-family:var(--mono);font-size:9.5px;letter-spacing:.11em;color:var(--muted);cursor:pointer;text-align:left} 2012.atl .moregrp:hover{color:var(--ink);background:var(--panel3)} 2013.atl .c-sig{min-width:0;display:flex;flex-direction:column;gap:0;align-items:flex-start} 2014.atl .c-sig .mo{font-family:var(--mono);font-size:9.5px;letter-spacing:.06em;color:var(--muted); 2015 overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%} 2016.atl .c-sig .win{display:block;font-style:normal;font-family:var(--mono);font-size:8.5px;letter-spacing:.06em;color:var(--dim);margin-top:4px} 2017.atl .c-sig .sig{max-width:100%;overflow:hidden} 2018.atl .row:hover, .atl .row.on{background:#F6FBF8} 2019.atl .row.on{box-shadow:inset 3px 0 0 var(--brand)} 2020.atl .pt{width:11px;height:11px;border-radius:50%;background:var(--c)} 2021.atl .rnm{font-weight:700;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap} 2022.atl .rds{font-size:12px;color:var(--muted);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden} 2023.atl .rc{font-family:var(--mono);font-size:9.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap} 2024.atl .rc em{display:block;font-style:normal;color:var(--dim);font-size:8.5px;margin-top:2px} 2025.atl .rev{position:relative;overflow:hidden;background:var(--brand);color:#fff;border:0;border-radius:var(--ra);padding:8px 6px; 2026 font-size:11.5px;font-weight:700;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:5px} 2027.atl .rev:hover{background:var(--brand-d)} 2028.atl .rev .fill{position:absolute;left:0;top:0;bottom:0;width:0;background:rgba(255,255,255,.3)} 2029.atl .rev.loading .fill{width:100%;transition:width 1.15s linear} 2030.atl .verdict{display:flex;align-items:center;justify-content:center;gap:5px;border-radius:var(--r);padding:7px 6px; 2031 font-family:var(--mono);font-size:9px;letter-spacing:.08em;font-weight:700;border:1px solid var(--c);color:var(--c);background:var(--panel)} 2032.atl .verdict b{font-family:var(--body);font-size:11px} 2033.atl .artic{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-bottom:1px solid var(--line)} 2034.atl .artic .kind{font-family:var(--mono);font-size:8px;letter-spacing:.12em;border-radius:var(--rs);padding:3px 7px;flex:none; 2035 background:var(--panel3);color:var(--muted);font-weight:600} 2036.atl .artic .kind.new{background:var(--brand);color:#fff} 2037.atl .artic .body{flex:1;min-width:0} 2038.atl .artic .ti{font-weight:600;font-size:13.5px;line-height:1.35;margin-bottom:3px} 2039.atl .artic .me{font-family:var(--mono);font-size:9px;letter-spacing:.06em;color:var(--dim)} 2040.atl .artic .acts{display:flex;gap:6px;flex:none;flex-wrap:wrap;justify-content:flex-end} 2041.atl .abtn{background:var(--panel);border:1px solid var(--line2);border-radius:var(--ra);padding:7px 12px;font-size:11.5px;font-weight:600;cursor:pointer;white-space:nowrap} 2042.atl .abtn:hover{background:var(--ink);color:#fff;border-color:var(--ink)} 2043.atl .abtn.p{background:var(--brand);border-color:var(--brand);color:#fff} 2044.atl .abtn.p:hover{background:var(--brand-d)} 2045.atl .void{padding:48px;text-align:center;font-family:var(--mono);font-size:10px;letter-spacing:.12em;color:var(--dim)} 2046.atl .fin{padding:34px 20px;text-align:center} 2047.atl .fin .em{font-size:30px} 2048.atl .fin .t{font-weight:700;font-size:16px;margin:8px 0 4px} 2049.atl .fin .s{font-size:13px;color:var(--muted)} 2050.atl /* ---- popup / modales ---- */ 2051.pop{position:fixed;width:322px;z-index:60;opacity:0;pointer-events:none;background:var(--panel);border:1px solid var(--line2); 2052 border-radius:var(--r);box-shadow:0 18px 48px rgba(15,23,42,.24);transition:opacity .11s} 2053.atl .pop.on{opacity:1;pointer-events:auto} 2054.atl .pop .ph{padding:13px 15px 10px;border-bottom:1px solid var(--line);display:flex;gap:9px;align-items:flex-start} 2055.atl .pop .ph h3{margin:0;font-size:17px;font-weight:700;flex:1;letter-spacing:-.01em} 2056.atl .pop .ph .id{display:block;font-family:var(--mono);font-size:8px;letter-spacing:.1em;color:var(--dim);margin-top:3px;font-weight:400} 2057.atl .pop .x{background:none;border:0;font-size:19px;color:var(--dim);cursor:pointer;line-height:1} 2058.atl .pop .pb{padding:12px 15px;max-height:min(38vh,320px);overflow:auto} 2059.atl .tags{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:11px} 2060.atl .tags span{font-family:var(--mono);font-size:8.5px;letter-spacing:.1em;border:1px solid var(--line);color:var(--muted);padding:4px 7px;border-radius:var(--rs)} 2061.atl .tags span.hi{background:var(--panel3);color:var(--ink);font-weight:600} 2062.atl .fld{margin-bottom:12px} 2063.atl .fld:last-child{margin-bottom:0} 2064.atl .fld .l{font-family:var(--mono);font-size:8px;letter-spacing:.18em;color:var(--dim);display:block;margin-bottom:5px} 2065.atl .fld p{margin:0;font-size:12.5px;line-height:1.5} 2066.atl .fld .memo{font-size:12px;color:var(--muted);border-left:2px solid var(--line);padding-left:10px} 2067.atl .pop .pf{padding:11px 15px;border-top:1px solid var(--line);background:var(--panel2)} 2068.atl .modal{position:fixed;inset:0;z-index:80;background:rgba(15,23,42,.55);
2068display:none;align-items:center;justify-content:center;padding:20px} 2069.atl .modal.on{display:flex} 2070.atl .mcard{background:var(--panel);border-radius:var(--rb);width:min(560px,100%);max-height:88vh;display:flex;flex-direction:column;overflow:hidden} 2071.atl .mcard .mh{padding:15px 20px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px} 2072.atl .mcard .mh h2{margin:0;font-size:18px;font-weight:700;flex:1} 2073.atl .mcard .mh .x{background:none;border:0;font-size:21px;color:var(--dim);cursor:pointer} 2074.atl .mcard .mb{padding:18px 20px;overflow:auto;flex:1} 2075.atl .crit{border:1px solid var(--line);border-radius:var(--r);overflow:hidden;margin-bottom:16px} 2076.atl .crit .r{display:flex;gap:12px;padding:9px 13px;border-bottom:1px solid var(--line);font-size:12.5px} 2077.atl .crit .r:last-child{border-bottom:0} 2078.atl .crit .k{font-family:var(--mono);font-size:9px;letter-spacing:.12em;color:var(--dim);width:112px;flex:none;padding-top:2px} 2079.atl .crit .v{flex:1;font-weight:500} 2080.atl .crit .v em{font-style:normal;color:var(--muted);font-weight:400} 2081.atl .mfield{display:flex;gap:8px} 2082.atl .mfield input{flex:1;border:1.5px solid var(--line2);border-radius:var(--ra);padding:12px 13px;font-size:14px;outline:none} 2083.atl .mfield input:focus{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-l)} 2084.atl .mnote{font-size:12px;color:var(--muted);margin:12px 0 0} 2085.atl /* enchaînement */ 2086.fcard{background:var(--panel);border-radius:var(--rb);width:min(660px,100%);max-height:88vh;display:flex;flex-direction:column;overflow:hidden} 2087.atl .fcard .fh{padding:12px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:12px} 2088.atl .fcard .fh .p{flex:1;height:6px;background:var(--panel3);border-radius:99px;overflow:hidden} 2089.atl .fcard .fh .p i{display:block;height:100%;background:var(--brand);border-radius:99px;transition:width .3s} 2090.atl .fcard .fh .c{font-family:var(--mono);font-size:10px;letter-spacing:.1em;color:var(--muted)} 2091.atl .fcard .fh .x{background:none;border:0;font-size:20px;color:var(--dim);cursor:pointer} 2092.atl .fcard .fb{padding:20px 22px;overflow:auto;flex:1} 2093.atl .fcard h2{margin:0 0 4px;font-size:25px;font-weight:700;letter-spacing:-.02em} 2094.atl .fcard .sub{font-family:var(--mono);font-size:9.5px;letter-spacing:.1em;color:var(--dim);margin-bottom:14px} 2095.atl .fcard .ff{padding:14px 18px;border-top:1px solid var(--line);background:var(--panel2);display:flex;gap:9px} 2096.atl .vbox{border-radius:var(--rb);padding:16px;display:flex;align-items:center;gap:14px;border:2px solid var(--c);background:var(--panel)} 2097.atl .vbox .vs{font-size:30px;font-weight:800;color:var(--c);line-height:1} 2098.atl .vbox .vt{font-weight:700;font-size:15px;color:var(--c)} 2099.atl .vbox .vd{font-size:12.5px;color:var(--muted)} 2100.atl .plus{position:fixed;z-index:90;font-weight:800;font-size:22px;color:var(--brand);pointer-events:none;animation:atl-up 1s ease forwards} 2101@keyframes atl-up{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-46px)}} 2102@media (max-width:1240px){.atl .row, .atl .cols{grid-template-columns:11px 30px minmax(230px,1fr) 88px 170px 104px} 2103.atl .c-stade, .atl .h-stade{display:none}} 2104@media (max-width:1040px){.atl .row, .atl .cols{grid-template-columns:11px 30px minmax(190px,1fr) 84px 104px} 2105.atl .c-sig, .atl .h-sig{display:none}} 2106@media (max-width:900px){.atl /* le rail passe à l'horizontale sous la carte : une colonne de 184 px est inutilisable sur téléphone */ 2107 .stage{flex-direction:column;height:auto;min-height:0;max-height:none} 2108.atl .mapzone{height:26vh;min-height:150px;flex:none} 2109.atl .frail{width:auto;flex:1;border-left:0;border-top:1px solid var(--line); 2110 flex-direction:row;flex-wrap:wrap;align-items:center;overflow:visible;padding:9px 10px;gap:6px} 2111.atl .frail .cap{margin:0 1px 0 0;line-height:1;align-self:center} 2112.atl .frail .cap+*{margin-bottom:0} 2113.atl .frail .statusf{margin-bottom:0;flex-direction:row} 2114.atl .dates{flex-direction:row;flex-wrap:wrap;gap:4px} 2115.atl .dates .dbh{display:none} 2116.atl .dates button{width:auto;height:29px;padding:0 11px;border-bottom:0;border-right:1px solid var(--line);font-size:12px} 2117.atl .dates button .dn{margin-left:6px} 2118.atl .fgrid{display:flex;flex-wrap:wrap;gap:4px} 2119.atl .frail .grow{display:none} 2120.atl .frow{flex:1 1 auto;justify-content:flex-end} 2121.atl .fpanel{right:0;left:0;top:100%;width:auto;border-left:0;border-right:0;max-height:52vh; 2122 box-shadow:0 20px 36px rgba(15,23,42,.18)} 2123.atl .fcols{columns:2} 2124.atl .listhead{flex-wrap:wrap;overflow:visible} 2125.atl .listhead .ctx{flex:1 1 100%;order:3} 2126.atl .groupbar{margin-left:0} 2127.atl .row, .atl .cols{grid-template-columns:11px 26px 1fr 100px;gap:9px;padding:9px 11px} 2128.atl .c-amt, .atl .h-amt, .atl .c-stade, .atl .h-stade, .atl .c-sig, .atl .h-sig{display:none} 2129.atl .nd{flex-direction:column;align-items:flex-start;gap:2px} 2130.atl .nd .rnm{max-width:100%} 2131.atl .nd .rds{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical} 2132.atl .demand{padding:10px 11px} 2133.atl .pop{width:calc(100vw - 20px);left:10px!important;top:auto!important;bottom:10px} 2134.atl .goal{gap:8px 12px;padding:9px 11px} 2135.atl .pbar{max-width:none} 2136.atl .sigstrip .s{display:none} 2137.atl .bulk{flex-direction:column} 2138.atl .bulk .side{width:100%}} 2139@media (max-width:560px){.atl .mapzone{height:22vh;min-height:120px} 2140.atl .fcols{columns:1} 2141.atl .row, .atl .cols{grid-template-columns:11px 24px 1fr 92px;gap:8px} 2142.atl .cols>*{font-size:7.5px} 2143.atl .listhead .main{font-size:12.5px} 2144.atl .listhead .main b{font-size:15px} 2145.atl .chain{padding:7px 11px;font-size:11.5px} 2146.atl .fcard, .atl .mcard{width:100%;max-height:92vh} 2147.atl .fcard .ff{flex-direction:column} 2148.atl .fcard .ff .abtn{flex:1 1 auto}} 2149@media (prefers-reduced-motion:reduce){.atl, .atl *{transition:none!important;animation:none!important}} 2150`,Xy=` 2151/* coque : hauteur pilotée par le montage (page /carte, iframe, démo home) */
2152.atl{height:var(--atelier-h,calc(100dvh - 60px));display:block;position:relative} 2153.atl .app{height:100%} 2154/* le prototype force overflow hidden sur html/body â on le garde DANS la coque seulement */ 2155.atl{overflow:hidden;border-radius:inherit} 2156/* le proto dimensionne la scène en vh (viewport) : dans une coque à hauteur 2157 fixe (cadre démo de la home, iframe), on raisonne en % du CONTENEUR. 2158 Le % se pose sur .fzone (enfant flex direct de .app, hauteur définie) â 2159 .stage remplit ensuite à 100 % (un % dans un parent auto ne résout pas). */ 2160.atl .fzone{flex:0 0 auto;height:36%;min-height:260px;max-height:430px} 2161.atl .stage{height:100%;min-height:0;max-height:none} 2162.atl .stage.folded{height:auto;min-height:0} 2163.atl .mapzone svg{max-height:100%} 2164`,e3=$y+Xy,Jx=["europe","northam","asia","southam","africa","oceania"],zw=["monde",...Jx],Mp=[{key:"europe",viewBox:"0 0 1000 1032",fr:"Europe",en:"Europe",countries:[{i2:"GB",n:"Royaume-Uni",d:"M277,310L271,319L274,331L281,316L277,310ZM195,356L180,362L178,375L189,369L195,356ZM188,379L179,384L189,398L195,393L188,390L188,379ZM187,419L181,409L178,418L187,419ZM170,482L180,472L174,467L178,462L174,449L156,449L136,463L144,475L154,469L158,480L170,482ZM216,561L201,574L182,571L150,598L159,600L178,594L186,600L194,590L201,589L218,595L231,588L259,596L274,594L283,582L266,577L283,568L293,548L286,537L265,534L271,523L256,509L269,514L268,499L251,480L248,454L235,438L228,439L219,435L217,432L235,431L226,426L238,423L256,398L252,391L220,389L242,362L214,358L204,371L207,377L200,376L196,381L196,394L191,405L184,407L190,414L199,409L181,447L191,430L199,425L193,434L201,427L203,434L198,435L199,447L188,463L191,469L193,465L223,467L211,477L216,491L221,490L215,508L219,515L214,511L213,516L192,515L183,523L194,522L190,539L168,548L172,556L182,555L195,567L216,561Z"},{i2:"UA",n:"Ukraine",d:"M981,609L942,639L934,656L931,659L932,648L927,658L933,670L908,664L883,676L869,674L872,669L862,668L878,666L881,660L871,663L866,654L860,649L867,664L860,662L848,673L842,695L831,702L836,715L829,712L818,721L805,717L816,697L813,685L836,680L809,655L805,642L772,635L727,668L718,663L692,663L687,668L671,658L675,637L681,636L676,621L696,590L683,560L689,560L694,551L718,544L743,544L755,549L762,543L773,546L778,538L784,544L797,538L806,542L807,518L826,511L829,503L850,494L867,506L863,511L869,522L889,521L901,538L920,535L932,524L948,533L950,528L986,528L990,536L986,546L993,549L990,558L999,564L1000,576L985,583L978,594L981,609Z"},{i2:"CH",n:"Suisse",d:"M429,702L428,716L448,720L447,731L440,729L441,740L425,732L417,751L407,733L394,748L379,748L374,733L358,740L381,702L408,700L411,695L429,702Z"},{i2:"SE",n:"Suède",d:"M458,367L458,388L485,438L484,448L478,448L487,463L486,473L507,472L510,455L516,449L533,449L540,432L539,381L543,379L532,376L544,375L562,359L565,351L556,353L569,340L552,317L542,315L538,263L544,263L543,251L547,254L551,242L576,218L583,200L576,191L577,176L586,158L607,156L599,144L587,97L549,72L544,73L546,92L527,89L525,106L518,103L513,109L503,156L492,162L493,186L484,207L49
21641,219L489,223L474,225L467,236L468,291L479,301L471,311L475,337L463,352L463,372L458,367ZM575,393L565,404L567,423L577,407L575,393ZM544,443L548,412L542,445L544,443Z"},{i2:"ES",n:"Espagne",d:"M190,802L134,792L108,779L82,776L71,767L37,776L41,804L35,813L49,811L49,820L82,824L88,837L70,849L62,883L49,884L57,904L46,919L53,929L37,945L37,955L50,955L58,970L60,968L62,969L57,976L71,997L104,983L154,991L169,975L190,972L198,952L216,941L208,932L207,918L238,887L234,884L266,874L293,857L293,843L255,839L254,832L241,826L239,830L224,828L197,814L198,808L190,802ZM292,922L287,914L280,915L267,924L282,933L292,922Z"},{i2:"SK",n:"Slovaquie",d:"M675,637L671,658L639,659L631,671L609,678L608,685L587,686L571,671L575,658L584,657L600,636L611,637L615,631L624,642L652,631L675,637Z"},{i2:"SI",n:"Slovénie",d:"M569,726L552,736L547,758L531,754L527,759L511,759L517,756L506,737L512,730L530,732L536,726L557,722L559,717L569,726Z"},{i2:"RS",n:"Serbie",d:"M672,763L688,768L700,765L697,789L712,804L703,816L704,831L687,836L689,823L666,809L658,823L633,808L638,802L631,794L638,790L628,783L631,768L623,768L624,760L630,757L622,753L618,738L631,729L643,729L656,738L658,746L673,753L672,763Z"},{i2:"RU",n:"Russie",d:"M618,464L604,476L600,491L653,485L646,466L623,463L624,473L619,475L614,473L618,464ZM905,665L890,695L912,697L915,712L922,715L949,684L967,678L968,668L947,678L926,665L905,665Z"},{i2:"RO",n:"Roumanie",d:"M805,717L818,721L829,712L836,715L836,727L827,732L826,726L822,729L824,764L791,759L762,780L708,786L709,779L696,770L700,765L688,768L672,763L673,753L658,746L656,738L644,729L661,722L673,684L692,663L720,663L727,668L758,644L792,675L805,717Z"},{i2:"PT",n:"Portugal",d:"M37,813L49,811L49,820L82,824L88,838L70,849L62,883L49,884L57,904L46,919L53,929L39,940L37,955L26,958L0,951L12,911L16,913L14,910L4,910L5,903L10,902L18,894L8,902L0,900L31,847L37,813Z"},{i2:"PL",n:"Pologne",d:"M680,549L696,590L675,623L681,638L657,630L633,635L629,641L623,641L615,631L607,638L598,625L580,620L581,614L565,612L568,618L562,622L553,613L554,607L530,598L526,603L529,591L521,575L520,555L511,545L515,536L512,520L517,523L517,517L511,516L510,514L573,483L585,486L579,485L590,495L655,484L666,489L679,520L681,529L671,543L680,549Z"},{i2:"NO",n:"Norvège",d:"M530,40L526,53L522,60L528,59L535,47L530,40ZM515,61L511,67L513,77L521,71L521,62L515,61ZM492,79L485,88L487,90L495,89L492,79ZM500,92L501,70L496,90L485,103L503,96L508,86L505,82L500,92ZM544,73L558,63L570,78L584,72L597,76L602,63L600,42L614,28L631,35L635,53L641,33L648,30L640,27L635,31L623,23L637,19L641,10L617,3L617,22L610,11L612,1L604,0L603,18L600,21L597,6L587,33L589,12L578,9L572,40L563,30L551,37L559,47L553,43L545,47L548,58L542,64L542,46L538,62L537,52L532,54L527,62L531,66L523,63L523,72L508,92L520,93L506,98L508,110L504,101L492,114L492,118L497,115L501,126L494,120L489,129L500,131L485,134L480,140L484,143L476,148L475,160L486,158L471,164L475,168L464,186L468,191L474,186L472,190L457,197L457,204L433,234L439,239L455,224L456,231L448,241L439,243L435,236L428,241L420,237L421,244L414,249L420,258L407,251L395,261L412,260L407,266L390,264L386,270L392,270L373,276L374,283L394,286L369,284L374,296L369,297L370,304L399,306L403,299L405,305L397,312L393,307L368,308L369,320L377,319L369,326L376,335L369,336L367,349L383,329L396,325L388,335L389,328L383,333L376,343L383,345L370,349L366,361L386,352L377,365L384,368L380,372L373,367L371,376L388,390L386,395L410,394L433,371L432,366L441,369L447,348L451,364L463,372L463,352L475,337L471,311L479,301L468,291L467,236L474,225L489,223L491,219L484,207L493,186L492,162L503,156L513,109L518,103L525,106L527,89L546,92L544,73Z"},{i2:"NL",n:"Pays-Bas",d:"M365,607L359,604L362,595L349,585L337,587L321,581L335,584L330,574L347,542L367,531L384,530L390,534L386,553L380,556L386,564L380,574L366,576L370,587L363,599L365,607Z"},{i2:"ME",n:"Monténégro",d:"M632,806L658,822L651,834L645,831L638,845L640,853L619,837L618,823L632,806Z"},{i2:"MD",n:"Moldavie",d:"M756,645L772,635L805,642L809,655L829,671L836,681L813,685L816,697L810,714L802,714L792,675L764,646L756,645Z"},{i2:"MK",n:"Macédoine du Nord",d:"M667,850L700,831L714,838L720,857L692,875L674,877L667,867L667,850Z"},{i2:"LU",n:"Luxembourg",d:"M366,625L373,635L370,645L359,642L359,631L366,625Z"},{i2:"LT",n:"Lituanie",d:"M653,485L646,466L623,463L617,441L625,432L664,427L675,420L707,435L707,445L713,445L700,462L704,481L698,478L688,490L669,495L664,488L653,485Z"},{i2:"LV",n:"Lettonie",d:"M707,435L675,420L664,427L632,429L617,441L614,419L620,396L632,390L653,408L663,398L658,380L669,372L692,382L708,380L728,414L722,428L707,435Z"}
2164,{i2:"XK",n:"Kosovo",d:"M653,826L666,809L689,823L687,836L667,850L654,832L653,826Z"},{i2:"IT",n:"Italie",d:"M394,748L373,753L380,763L369,772L377,779L374,793L389,799L386,810L397,807L413,792L442,806L449,834L463,851L474,854L496,877L520,882L528,894L537,896L535,900L544,897L549,910L566,916L579,945L568,972L578,974L588,959L589,948L601,941L599,930L585,921L592,900L613,903L625,915L627,906L614,892L567,871L572,860L550,860L536,852L524,840L514,815L488,797L485,783L490,776L485,762L503,752L517,756L506,737L512,730L486,725L481,715L458,724L448,721L447,731L440,729L440,740L425,732L419,751L407,733L394,748ZM434,906L422,884L410,894L399,894L406,924L403,943L408,951L415,950L417,942L429,944L434,906ZM566,964L526,976L501,971L495,982L544,1009L558,1011L562,1001L557,989L566,964Z"},{i2:"IE",n:"Irlande",d:"M161,446L136,463L143,474L154,469L158,480L166,482L161,515L151,533L113,534L104,541L85,539L92,535L81,534L92,529L79,528L89,521L82,516L113,510L93,508L114,495L96,484L108,475L103,461L128,467L138,458L128,454L139,443L150,442L148,451L156,441L161,446Z"},{i2:"IS",n:"Islande",d:"M146,106L158,106L149,111L153,115L148,122L159,133L154,147L131,160L77,167L61,155L55,139L37,134L40,127L45,131L57,126L50,125L59,119L53,119L52,110L36,99L62,106L65,103L57,99L68,96L42,80L48,83L49,76L57,81L53,75L62,69L68,81L71,65L81,84L74,90L73,105L82,97L85,101L94,88L98,100L110,92L112,108L115,96L121,104L128,100L135,103L141,95L146,106Z"},{i2:"HU",n:"Hongrie",d:"M671,658L687,668L673,684L661,721L651,727L631,729L609,744L596,744L559,717L566,712L569,696L564,693L576,690L577,682L590,687L608,685L609,678L631,671L639,659L671,658Z"},{i2:"GR",n:"Grèce",d:"M806,899L794,906L811,908L806,899ZM785,834L788,842L784,845L770,850L753,845L743,847L679,878L675,900L668,905L668,914L662,914L681,931L690,930L682,935L694,949L696,944L700,949L721,942L740,948L733,954L708,947L694,962L709,975L712,989L716,992L719,983L731,998L735,988L747,996L732,966L743,971L750,965L738,955L748,949L761,954L757,940L723,929L733,922L729,915L738,917L718,896L717,882L723,879L736,894L742,894L735,886L748,892L742,883L756,886L744,880L740,871L768,858L791,861L798,840L796,834L785,834ZM806,930L805,923L797,924L800,933L806,930ZM737,922L730,928L771,946L759,929L737,922ZM855,989L863,972L853,982L855,989ZM764,1016L762,1028L783,1027L792,1032L824,1023L826,1014L814,1022L812,1016L778,1022L774,1016L764,1016Z"},{i2:"DE",n:"Allemagne",d:"M501,505L500,497L494,493L492,504L501,505ZM411,695L442,710L447,702L459,706L482,696L498,703L492,685L511,664L489,647L477,621L481,625L493,618L518,602L517,598L526,604L529,591L521,575L520,555L511,545L515,536L512,520L502,509L482,500L462,516L454,515L456,504L436,501L437,492L416,488L420,515L427,519L435,528L425,519L415,518L412,532L404,523L391,524L389,544L380,556L386,564L380,574L366,576L370,587L363,599L371,616L366,626L373,635L370,645L377,654L403,660L391,699L407,700L411,695Z"},{i2:"FR",n:"France",d:"M391,699L403,660L354,642L342,633L342,623L330,627L331,619L322,617L312,602L306,602L303,592L287,596L283,614L255,627L253,632L258,635L247,638L229,632L228,624L217,622L221,653L196,652L187,642L157,647L166,653L159,652L163,657L156,659L162,667L190,678L194,688L204,690L208,693L199,693L200,704L216,721L212,738L220,746L223,760L214,743L211,768L191,804L213,823L236,830L242,826L268,843L293,843L291,829L310,812L356,829L386,810L389,799L374,793L377,779L369,772L380,763L373,753L378,747L374,733L358,738L379,703L391,699ZM429,858L425,833L424,842L408,852L413,874L421,880L429,858Z"},{i2:"FI",n:"Finlande",d:"M607,156L599,144L587,97L549,72L558,63L570,78L584,72L597,76L603,35L615,28L634,40L630,58L639,77L657,88L654,112L676,141L672,145L677,163L694,181L692,196L719,214L707,258L690,293L673,301L672,295L664,308L628,329L624,318L618,324L618,314L601,310L598,282L587,253L589,236L599,231L618,183L626,180L623,162L612,153L607,156Z"},{i2:"EE",n:"Estonie",d:"M706,379L710,369L698,344L704,325L701,322L664,326L638,345L647,368L658,366L658,380L671,372L692,382L706,379ZM632,354L626,350L618,356L627,362L632,354ZM640,367L618,369L624,378L622,385L640,367Z"},{i2:"DK",n:"Danemark",d:"M434,491L429,484L432,471L453,444L443,439L448,406L411,433L419,435L424,426L426,436L417,442L409,439L408,468L416,473L416,488L434,491ZM480,457L474,453L468,465L465,458L455,465L470,492L478,477L475,472L480,457ZM447,469L436,471L438,481L446,484L452,480L447,469ZM456,487L456,492L468,495L468,491L456,487Z"},{i2:"CZ",n:"Tchéquie",d:"M604,635L572,665L533,656L528,668L519,670L489,647L477,621L481,625L493,618L518,602L517,598L525,604L530,598L555,608L553,613L562,622L568,618L565,612L581,614L580,620L598,625L604,635Z"},{i2:"HR",n:"Croatie",d:"M511,759L527,759L531,754L547,758L551,737L565,726L596,744
2164L618,738L622,753L630,758L625,758L622,768L616,763L580,761L568,770L557,766L557,778L600,827L584,815L565,813L547,796L552,792L531,764L527,763L518,778L511,759Z"},{i2:"BG",n:"Bulgarie",d:"M824,817L795,824L786,833L788,842L784,845L770,850L752,845L719,857L719,845L703,831L703,816L712,804L701,796L697,783L702,775L709,779L708,786L762,780L791,759L824,764L810,805L824,817Z"},{i2:"BA",n:"Bosnie-Herzégovine",d:"M630,767L627,782L638,790L631,794L638,804L627,807L629,813L618,824L619,836L600,827L557,778L558,765L568,770L580,761L630,767Z"},{i2:"BE",n:"Belgique",d:"M328,591L349,585L363,596L359,604L371,620L359,631L359,642L342,633L342,623L330,627L331,619L303,598L303,592L316,586L328,591Z"},{i2:"BY",n:"Biélorussie",d:"M820,512L804,523L806,542L797,538L784,544L778,538L773,546L762,543L755,549L743,544L709,546L694,551L682,564L680,549L671,543L681,527L667,495L681,494L698,478L704,481L700,462L713,445L707,445L707,435L722,428L727,416L747,416L753,423L763,415L776,419L781,442L804,458L805,464L817,464L824,470L817,482L804,483L803,489L820,512Z"},{i2:"AT",n:"Autriche",d:"M429,710L434,701L442,710L447,702L459,706L482,696L498,703L493,683L510,671L511,664L528,668L533,656L570,662L577,682L576,690L564,693L569,696L566,711L557,722L536,726L530,732L488,726L481,715L458,724L445,718L441,722L429,710Z"},{i2:"AL",n:"Albanie",d:"M646,859L638,845L646,830L665,841L667,867L682,884L667,915L645,896L646,859Z"}]},{key:"northam",viewBox:"0 0 1000 765",fr:"Amérique du Nord",en:"North America",countries:[{i2:"PR",n:"Porto Rico",d:"M914,604L930,599L930,601L928,605L916,610L914,604Z"},{i2:"US",n:"Ãtats-Unis",d:"M283,11L279,14L282,18L279,24L284,26L285,16L283,15L283,11ZM262,54L258,51L257,60L260,62L263,58L262,54ZM193,95L191,94L183,95L192,97L193,95ZM203,102L199,98L198,101L191,99L200,103L200,102L203,102ZM221,105L217,103L212,105L221,112L221,105ZM388,218L381,208L382,186L379,167L374,167L370,171L369,170L365,171L366,167L363,155L365,152L360,151L356,147L419,61L4
216415,53L409,49L401,36L394,29L396,25L391,21L391,16L387,16L391,15L391,11L383,11L378,7L373,10L376,7L367,4L369,4L353,6L346,0L340,1L338,15L335,20L338,27L335,28L334,31L338,34L336,36L333,31L336,25L332,30L333,33L332,35L324,26L325,24L329,23L327,20L322,18L320,19L319,17L310,13L311,23L308,21L304,28L305,33L310,37L310,40L312,38L310,41L317,42L320,43L319,46L314,46L311,53L307,53L304,49L296,49L295,43L287,47L286,45L279,48L277,46L272,53L274,53L274,56L271,56L276,62L274,62L275,65L270,62L272,58L267,58L265,70L270,74L272,71L278,70L279,71L273,72L269,80L264,83L265,84L259,86L262,89L269,90L269,94L270,94L268,101L274,97L276,98L276,100L274,99L273,102L282,104L274,107L273,110L270,109L266,114L261,112L256,115L255,113L245,112L242,113L241,116L239,114L239,110L237,108L224,107L221,109L224,108L225,111L227,109L227,112L228,113L235,112L235,114L233,114L243,118L242,120L252,121L254,119L265,122L269,120L284,122L292,120L294,118L293,114L299,112L305,112L306,108L308,110L317,108L329,111L325,111L326,117L322,111L316,111L307,117L307,120L310,120L303,120L303,122L306,125L316,123L316,125L319,123L322,127L328,124L325,122L327,122L330,118L334,118L331,121L339,124L335,127L338,130L336,131L338,134L343,133L339,135L341,141L351,149L353,148L352,150L355,155L362,155L363,158L360,159L361,155L357,158L365,180L369,179L366,172L368,171L370,175L372,173L372,175L369,180L373,184L376,173L378,171L375,182L377,186L380,184L377,188L377,191L379,191L380,192L378,192L379,195L377,193L375,198L378,201L378,209L381,213L375,218L383,216L381,224L379,225L380,230L385,226L388,218ZM293,125L291,126L287,126L288,128L293,130L295,129L293,125ZM287,128L284,128L283,126L280,131L281,127L277,126L274,132L276,130L277,133L274,134L284,135L284,132L288,135L289,132L287,128ZM4,424L3,422L0,422L2,426L4,424ZM12,438L9,437L9,441L13,444L12,438ZM18,455L19,459L23,461L19,454L18,455ZM26,481L25,473L21,466L20,469L17,470L15,478L17,481L26,481ZM323,130L330,130L330,128L323,130ZM369,181L364,182L364,189L367,188L369,192L370,189L369,188L371,188L372,186L368,185L369,181ZM374,184L372,193L369,197L374,196L376,188L376,193L376,187L374,184ZM367,190L362,194L365,192L364,205L368,195L367,190ZM372,199L371,205L373,206L374,202L375,205L377,202L372,199ZM369,199L368,204L366,208L371,203L370,199L369,199ZM378,208L374,211L375,214L378,211L378,208ZM370,207L368,210L370,212L367,212L370,216L368,218L371,227L374,222L371,218L374,219L374,214L372,208L370,207ZM381,216L379,217L375,223L378,221L379,224L381,216ZM368,224L366,217L367,226L368,224ZM795,380L786,386L784,391L790,388L798,380L794,384L795,380ZM762,346L752,365L737,370L734,372L737,379L711,398L706,394L710,388L711,377L704,358L695,355L694,351L691,352L689,348L686,349L683,345L655,334L647,338L636,337L632,339L620,334L615,336L609,334L606,327L604,327L604,331L581,332L510,329L458,321L406,309L407,320L404,327L401,329L399,328L402,327L405,321L399,325L404,321L404,318L391,311L390,328L392,328L390,329L391,331L388,335L393,336L394,338L389,336L379,362L374,371L373,387L367,398L370,405L368,415L373,424L371,427L375,429L377,426L384,429L377,428L378,434L375,430L374,433L374,436L378,442L376,447L384,463L382,469L400,479L400,483L408,489L410,498L432,500L431,503L464,521L491,524L492,519L508,520L522,534L526,546L537,553L547,543L556,545L574,569L575,574L579,582L596,587L598,586L595,580L594,572L591,570L595,571L596,567L595,566L598,564L597,562L604,558L602,556L608,556L606,558L615,552L619,548L618,544L620,543L620,546L622,545L620,547L629,544L628,542L629,540L629,543L644,544L648,540L654,543L654,546L659,547L663,545L665,547L665,542L672,545L673,547L676,544L669,540L672,538L671,535L669,537L668,534L664,536L662,536L662,534L670,534L676,531L683,530L684,527L687,531L685,532L691,529L694,527L692,529L701,526L702,527L699,528L706,529L707,528L711,534L722,527L726,528L738,538L738,549L740,550L740,547L742,548L740,553L745,559L748,557L748,562L750,560L751,566L756,568L761,575L767,571L767,555L757,539L755,535L758,539L758,537L759,541L761,544L759,537L749,525L745,514L745,508L749,497L748,495L750,496L749,494L755,491L763,477L770,473L769,470L770,472L773,463L774,464L781,459L780,458L778,459L776,458L775,457L778,458L779,455L774,453L782,453L784,447L783,446L782,449L781,446L775,448L774,445L777,447L779,443L783,444L780,438L783,444L786,446L779,436L775,437L772,435L767,434L773,434L775,436L776,435L771,431L774,433L774,429L772,429L766,425L772,429L774,426L764,423L763,421L764,417L764,423L772,424L768,420L771,421L767,412L771,407L772,409L770,410L771,417L774,417L772,420L776,420L777,424L779,424L779,433L782,417L781,413L777,411L774,405L775,403L777,400L775,407L782,410L785,398L786,400L784,393L782,392L783,387L782,384L783,386L783,389L790,381L800,376L800,371L802,371L802,374L805,370L806,372L811,368L810,365L808,364L810,367L807,369L800,364L802,360L800,359L801,348L808,341L808,334L809,337L811,337L811,334L814,334L820,326L817,323L814,323L813,319L810,319L804,305L800,304L796,307L793,305L790,333L787,334L787,337L762,346Z"},{i2:"TT",n:"Trinité-et-Tobago",d:"M1000,666L998,668L991,671L995,667L994,663L992,663L999,658L1000,666Z"},{i2:"PA",n:"Panama",d:"M827,742L826,744L830,749L827,754L824,753L823,758L816,751L819,747L824,748L819,746L816,748L814,745L808,743L803,744L801,749L793,754L799,761L792,765L789,765L787,759L785,762L779,758L768,758L766,761L764,759L767,752L764,751L765,745L770,746L774,750L777,749L776,748L782,750L801,738L818,738L827,742Z"},{i2:"NI",n:"Nicaragua",d:"M755,688L752,691L755,695L752,707L754,716L753,713L751,716L753,721L751,723L753,725L751,729L754,734L732,733L731,735L707,718L715,716L718,713L717,708L721,707L724,704L728,705L736,693L740,695L755,688Z"},{i2:"MX",n:"Mexique",d:"M441,542L441,540L438,537L438,540L441,542ZM450,542L447,546L449,547L450,545L450,542ZM410,498L418,531L425,537L432,548L429,553L430,556L428,554L421,554L434,568L438,566L439,570L445,575L447,582L446,589L449,594L462,606L465,614L471,611L472,608L467,600L464,598L463,601L460,598L460,592L455,581L454,571L452,568L452,572L451,571L444,557L443,550L429,530L429,509L445,520L444,526L451,545L460,558L465,559L466,566L476,575L478,579L474,581L474,584L476,586L479,584L478,587L480,587L487,592L485,592L488,597L492,599L490,599L509,621L510,628L514,634L511,641L513,643L509,645L511,650L516,657L527,663L532,669L548,673L558,681L573,687L604,697L611,697L626,690L624,690L625,688L635,692L630,690L631,689L636,692L655,706L657,701L655,698L660,690L674,688L674,685L663,676L667,676L667,670L687,668L687,666L690,666L697,655L700,661L703,650L701,649L703,647L700,646L708,629L704,624L701,625L703,626L690,627L671,635L668,653L661,659L663,662L660,664L656,663L656,661L651,662L629,669L621,664L614,664L599,643L593,629L595,632L597,634L597,637L597,634L593,628L592,623L593,603L598,586L596,587L578,581L574,569L556,545L547,543L537,553L526,546L522,534L508,520L492,519L491,524L464,521L431,503L432,500L410,498Z"},{i2:"JM",n:"Jamaïque",d:"M805,638L822,638L824,640L817,642L814,645L801,642L805,638Z"},{i2:"HN",n:"Honduras",d:"M755,688L741,695L735,694L728,705L724,704L721,707L717,708L718,713L714,717L711,717L709,713L705,713L705,708L697,709L687,705L689,697L704,686L713,687L719,686L723,682L734,681L742,682L747,685L745,684L744,686L751,687L749,685L755,688Z"},{i2:"HT",n:"Haïti",d:"M865,608L868,613L868,618L866,620L869,626L866,624L852,628L847,632L841,630L843,627L858,625L862,622L856,618L856,614L849,613L849,611L865,608Z"},{i2:"GT",n:"Guatemala",d:"M655,706L657,701L655,698L660,690L674,688L674,685L663,676L667,676L667,670L687,668L687,689L694,689L694,687L699,689L689,698L689,702L680,713L665,711L655,706Z"},{i2:"SV",n:"Salvador",d:"M687,705L697,709L701,708L706,708L705,715L696,716L698,717L680,713L687,705Z"},{i2:"DO",n:"République dominicaine",d:"M874,629L866,620L868,618L865,608L867,605L883,602L887,605L892,604L888,607L898,606L902,607L900,613L893,613L876,621L874,629Z"},{i2:"GL",n:"Groenland",d:"M732,44L742,46L739,53L736,53L736,51L732,52L730,50L732,49L728,47L732,44Z"},{i2:"CU",n:"Cuba",d:"M753,598L734,608L732,611L732,615L727,618L736,615L748,605L757,603L759,605L755,607L758,608L764,608L764,606L766,608L772,606L784,609L790,608L794,613L798,615L808,614L809,616L804,624L831,616L840,610L831,607L823,609L823,605L810,606L807,604L806,605L804,604L806,603L802,602L789,599L783,600L777,596L753,598ZM751,616L746,613L747,617L745,618L749,618L751,616Z"},{i2:"CR",n:"Costa Rica",d:"M768,745L764,747L764,751L767,752L764,759L766,761L761,756L759,756L761,758L757,758L756,752L745,749L740,744L737,743L741,747L739,749L733,747L730,743L732,738L729,737L732,733L751,735L754,733L758,738L768,745Z"},{i2:"CA",n:"Canada",d:"M558,30L557,33L560,33L561,32L558,30ZM521,31L518,32L515,34L518,35L521,31ZM562,34L557,35L558,38L561,38L560,40L564,38L562,34ZM547,38L545,27L541,31L544,41L538,40L535,32L532,31L531,28L528,28L527,30L529,31L525,30L523,33L528,34L521,35L527,36L520,37L519,39L523,43L527,43L529,39L531,40L529,43L537,43L526,47L529,51L543,46L548,48L552,45L554,38L552,36L550,40L549,37L547,38ZM573,30L572,32L570,31L567,32L571,36L569,36L570,38L564,33L567,39L563,39L561,41L572,40L567,44L569,48L575,47L575,43L577,43L575,32L573,30ZM559,46L557,43L555,46L557,47L559,46ZM588,44L583,41L579,48L585,51L589,51L588,44ZM575,60L575,57L571,60L575,60ZM510,51L504,43L495,42L495,49L481,64L485,70L486,77L496,75L500,68L520,59L515,50L512,49L510,51ZM554,66L552,61L547,63L551,70L554,66ZM587,57L585,59L586,62L583,62L584,70L586,79L590,79L591,74L589,71L596,71L600,58L587,57ZM578,60L566,61L568,65L566,63L564,64L570,67L567,67L569,70L565,72L562,68L560,72L574,88L575,82L578,84L581,82L581,74L577,69L575,70L578,65L578,60ZM522,66L522,61L507,66L503,74L507,76L504,78L515,80L502,83L504,87L518,89L525,95L504,93L504,101L515,105L516,114L530,114L539,111L543,107L551,113L557,114L562,112L561,107L557,110L556,105L559,106L561,103L565,105L565,101L556,95L553,90L553,84L550,69L543,64L543,80L541,83L539,72L536,67L534,67L535,71L529,74L531,69L526,66L523,69
2164L520,69L522,66ZM579,104L576,104L577,108L575,106L575,109L571,113L584,118L589,114L579,104ZM388,218L384,229L388,224L389,226L379,234L380,237L383,238L376,242L379,248L385,244L388,245L385,247L388,249L389,252L384,247L385,245L382,246L385,252L384,256L387,256L383,261L386,260L381,263L382,267L386,263L393,259L390,262L391,268L388,263L385,264L383,269L383,271L386,270L390,271L385,271L381,275L385,279L389,279L387,283L391,284L387,284L389,285L392,287L394,285L396,288L399,284L396,289L396,293L399,297L403,294L401,298L403,300L400,300L403,303L406,300L404,304L407,304L404,305L404,308L458,321L510,329L581,332L604,331L604,327L606,327L609,334L615,336L620,334L632,339L636,337L647,338L655,334L683,345L686,349L689,348L691,352L694,351L695,355L704,358L711,377L710,388L706,394L711,398L737,379L734,372L737,370L752,365L759,350L767,340L764,339L770,335L772,329L784,313L786,300L776,300L786,299L791,285L797,280L798,269L821,256L828,255L837,248L840,232L848,225L851,214L847,213L848,211L845,212L847,209L842,203L836,201L834,207L832,206L833,203L829,201L824,203L826,203L818,219L818,216L816,216L823,206L823,204L826,197L821,196L817,199L813,197L812,202L812,198L809,197L806,203L806,197L803,195L796,196L796,194L794,194L794,192L786,191L793,189L791,186L786,185L786,183L782,184L784,182L783,179L779,178L776,181L776,175L772,179L774,174L770,171L766,173L768,170L764,170L759,164L757,166L757,163L755,163L757,169L755,170L759,173L756,173L757,176L759,177L757,181L759,185L756,182L753,193L751,189L751,191L750,193L749,189L749,194L746,197L749,193L746,187L743,186L736,191L739,189L738,184L736,184L733,178L728,179L733,177L729,166L727,169L725,168L719,169L715,167L716,165L713,166L712,164L709,165L708,162L702,160L699,165L695,165L693,167L684,165L681,169L687,176L686,185L689,184L695,197L693,196L692,208L705,216L711,231L708,243L698,253L704,258L713,276L711,282L714,285L714,288L709,285L708,290L712,294L705,290L701,293L703,289L701,286L691,282L692,280L686,274L680,252L670,252L663,254L662,256L662,253L659,251L647,248L637,241L626,238L613,243L615,238L609,223L603,223L602,228L602,224L598,220L598,204L605,190L603,188L606,185L605,183L608,185L608,181L611,180L608,178L613,178L616,174L614,170L610,168L607,170L608,168L601,167L600,164L615,169L618,167L618,162L623,163L622,162L624,163L627,160L630,149L621,148L616,144L608,143L616,143L628,147L633,138L629,134L633,133L639,136L642,135L637,128L635,129L635,127L643,133L646,130L649,120L641,110L645,107L642,105L643,101L640,101L637,97L625,98L631,109L628,110L627,124L624,128L619,120L618,116L620,115L617,110L612,107L610,118L604,107L607,105L597,104L600,100L599,98L602,98L595,91L592,82L588,80L584,84L585,87L582,88L582,93L585,95L582,99L585,103L595,106L594,109L595,107L592,108L591,114L594,114L594,112L596,116L591,122L588,123L590,131L590,134L587,135L588,137L588,138L585,133L589,134L585,128L586,120L583,123L584,120L582,120L580,118L575,119L577,124L581,125L580,127L575,123L576,125L574,126L559,126L555,122L550,122L544,112L535,115L533,118L537,120L546,116L535,124L538,134L535,133L537,139L532,131L534,130L527,121L516,122L505,119L506,115L512,114L507,107L500,105L485,91L481,90L478,93L474,93L477,84L472,91L469,91L467,75L466,79L460,82L461,80L455,81L450,84L451,82L448,81L439,85L443,81L458,79L459,77L439,78L441,76L440,74L439,76L434,75L431,78L431,82L426,75L424,66L419,61L356,147L360,151L365,152L363,155L366,167L365,171L370,171L374,167L379,167L382,186L381,208L388,218ZM362,230L360,237L362,240L360,239L364,242L370,234L363,237L367,233L362,230ZM378,248L374,243L377,249L378,248ZM366,245L360,242L364,255L365,249L363,246L366,245ZM382,250L380,252L380,256L382,255L380,261L384,254L382,250ZM376,277L377,281L381,281L380,283L377,282L376,285L380,287L380,290L386,294L383,294L382,296L386,297L388,303L392,304L393,302L392,304L390,306L397,313L401,314L399,304L394,299L393,288L379,277L376,277ZM630,53L631,57L637,62L648,58L641,52L630,53ZM649,93L645,94L644,95L647,96L649,93ZM654,101L654,96L652,102L654,101ZM623,82L618,77L614,68L617,57L611,57L606,62L604,73L606,83L616,87L608,87L612,93L616,95L621,92L624,96L640,93L643,95L639,92L650,90L646,86L647,84L653,86L658,92L661,90L661,93L664,93L665,96L662,97L663,101L669,95L669,97L673,99L674,97L687,109L683,123L689,129L680,134L684,137L684,139L681,135L673,135L674,138L672,142L674,146L681,147L684,142L689,141L687,138L692,141L695,138L695,140L702,144L708,145L706,147L710,150L720,149L727,152L740,150L739,147L718,139L725,139L722,136L731,140L730,138L741,141L739,138L741,137L734,130L739,134L738,129L729,126L731,123L728,124L727,121L724,121L724,123L721,121L722,123L717,118L713,118L709,114L706,113L713,113L708,109L711,109L711,106L717,109L718,107L719,110L722,104L722,111L729,116L728,112L729,115L734,115L729,106L733,106L731,103L733,101L729,99L732,98L732,97L
2164729,96L732,94L726,92L722,97L722,92L715,94L718,93L717,91L711,91L710,88L711,93L706,90L706,93L704,88L703,92L701,88L690,88L695,87L694,84L689,85L691,83L697,81L694,79L687,82L692,76L690,74L686,72L686,77L684,74L681,78L684,71L677,70L675,74L676,79L674,75L673,77L674,69L668,74L670,67L663,66L664,70L661,68L660,70L660,66L658,73L657,68L656,68L658,64L655,64L653,69L654,63L650,60L643,61L642,64L646,66L641,66L644,70L637,66L638,69L636,72L635,66L633,68L635,63L627,54L622,56L617,63L622,66L618,65L617,68L624,74L620,73L618,76L624,78L625,85L622,84L619,86L623,82ZM678,103L674,104L673,105L677,107L680,105L678,103ZM666,104L665,112L668,116L672,114L674,111L671,104L666,104ZM627,119L626,116L624,115L625,121L627,119ZM646,141L640,137L642,140L646,141ZM749,153L747,150L745,151L749,153ZM640,146L635,140L634,141L636,159L633,166L639,164L643,169L651,156L656,160L663,161L666,156L662,154L657,156L655,150L641,144L640,146ZM675,158L679,160L681,158L678,157L675,158ZM660,167L653,170L652,175L654,178L657,177L660,171L660,167ZM672,171L672,177L675,179L676,172L672,171ZM696,233L694,231L694,236L694,233L693,232L692,240L694,237L694,240L695,239L696,235L697,239L696,233ZM856,218L850,225L850,230L853,246L855,247L853,250L857,253L854,253L855,259L853,258L852,261L858,259L855,268L857,271L873,262L877,256L877,260L880,258L881,256L884,253L881,264L883,265L885,263L887,253L887,255L886,249L891,252L893,258L894,253L898,258L900,256L897,245L895,244L894,248L892,241L891,249L889,248L889,245L887,246L888,237L883,243L884,239L881,240L880,233L876,236L874,234L872,242L870,237L870,239L865,241L865,238L864,240L865,234L862,237L861,235L860,242L857,225L854,223L856,218ZM833,265L820,263L812,266L826,268L833,265ZM693,271L689,272L688,274L697,275L693,271ZM857,290L853,282L851,295L855,299L860,295L863,290L861,288L858,288L857,293L858,292L856,297L856,293L854,295L857,290ZM834,299L830,293L829,299L837,301L840,297L843,300L846,293L834,299ZM820,322L831,310L831,307L833,307L832,314L842,308L838,312L839,315L836,314L836,312L835,312L827,326L829,325L830,334L836,335L841,322L840,320L845,318L844,316L858,301L855,302L855,299L849,298L845,303L830,304L824,296L821,297L822,289L819,289L816,292L813,291L807,292L811,288L817,288L820,281L820,278L817,277L819,276L813,274L805,278L794,290L786,313L776,323L771,331L770,338L763,346L787,337L787,334L790,333L793,305L796,307L800,304L804,305L810,319L813,319L815,324L820,322Z"},{i2:"BZ",n:"Belize",d:"M687,689L687,666L690,666L693,660L697,661L697,679L691,688L687,689Z"},{i2:"BS",n:"Bahamas",d:"M788,551L777,553L780,555L788,551ZM796,558L796,550L791,547L787,549L791,548L795,550L794,557L796,558ZM794,574L788,568L789,574L787,574L792,577L794,574ZM797,577L792,578L796,582L798,582L797,577ZM849,595L844,598L843,601L848,599L849,595Z"}]},{key:"asia",viewBox:"0 0 1000 690",fr:"Asie",en:"Asia",countries:[{i2:"YE",n:"Yémen",d:"M105,366L101,337L74,332L65,333L52,342L50,337L37,330L26,326L21,322L17,330L13,332L8,343L10,348L8,374L14,378L22,379L29,375L39,378L52,376L58,379L65,375L88,375L94,374L96,368L105,366ZM100,410L97,410L100,414L108,414L100,410Z"},{i2:"VN",n:"Viêt Nam",d:"M640,375L634,378L632,382L627,382L627,388L622,394L619,404L628,414L627,416L643,430L645,429L653,438L659,454L662,467L661,465L659,467L660,474L658,480L641,492L638,489L638,492L635,491L634,492L636,493L633,494L636,495L634,498L629,495L634,500L632,501L626,497L630,503L623,507L619,512L616,512L616,502L619,498L611,494L616,492L618,488L625,487L629,489L626,480L631,479L631,476L642,470L642,460L639,453L642,441L636,436L638,433L631,429L629,424L614,410L614,408L601,402L603,398L608,398L611,394L605,389L607,387L602,384L598,387L593,386L590,382L591,377L589,376L588,378L582,371L586,367L591,369L594,366L600,368L602,365L607,364L612,358L618,362L627,363L625,366L626,372L640,375Z"},{i2:"UZ",n:"Ouzbékistan",d:"M328,144L330,146L321,150L329,157L332,153L334,159L341,163L328,167L321,165L319,162L323,159L321,156L315,158L312,157L310,162L305,161L307,163L302,168L295,165L292,169L297,173L296,178L297,181L290,190L280,186L283,179L276,175L265,161L258,150L258,137L246,130L248,121L244,119L241,112L237,113L238,117L236,114L233,116L226,117L224,123L217,120L233,83L253,84L264,102L268,113L285,118L289,118L293,128L295,128L291,137L295,138L294,147L303,150L304,156L306,157L313,149L328,144Z"},{i2:"AE",n:"Ãmirats arabes unis",d:"M159,276L158,288L155,290L155,288L153,288L150,294L152,297L147,297L140,309L119,298L114,283L115,280L117,285L123,285L134,290L139,290L159,276Z"},{i2:"TM",n:"Turkménistan",d:"M213,118L224,123L226,117L233,116L236,114L238,117L237,113L241,112L244,119L248,121L246,130L258,137L258,150L265,161L276,175L283,180L280,186L275,182L272,185L266,185L261,192L256,194L249,194L247,198L240,199L233,192L236,181L230,179L225,167L218,163L212,157L212,154L198,151L191,155L184,154L191,137L191,134L187,132L190,129L192,131L193,127L190,124L189,127L190,119L194,114L199,120L203,121L207,119L204,112L205,105L199,104L194,112L195,105L200,103L208,104L212,110L213,118Z"}
2164,{i2:"TR",n:"Turquie",d:"M50,6L47,5L47,2L40,0L39,5L31,8L34,13L27,15L40,13L48,20L50,18L48,11L50,6ZM121,70L111,70L107,65L100,63L93,52L91,51L91,46L87,42L88,38L78,31L71,29L61,30L50,19L48,21L51,26L45,23L43,23L44,26L32,14L26,15L22,20L26,23L23,24L22,30L20,30L20,34L16,33L17,29L14,32L17,39L13,41L12,48L10,49L15,53L9,52L17,60L16,65L18,69L23,71L28,67L32,71L35,85L41,88L52,86L54,92L61,91L60,94L55,96L54,102L60,100L64,95L68,100L74,101L80,108L91,109L97,112L102,113L102,116L107,115L115,120L115,124L120,123L119,115L123,112L126,100L129,101L132,98L133,100L132,95L128,91L132,83L131,74L121,70Z"},{i2:"TL",n:"Timor oriental",d:"M837,672L836,669L838,667L836,666L838,663L857,656L860,656L837,672Z"},{i2:"TH",n:"Thaïlande",d:"M557,393L566,392L568,394L568,401L575,401L576,407L573,422L575,422L584,414L590,418L596,411L603,412L612,422L612,431L621,438L620,450L616,454L613,452L597,454L588,463L595,481L592,476L584,472L574,473L575,465L571,463L565,466L565,478L557,497L557,504L558,508L564,508L566,515L569,518L572,529L569,523L568,525L571,529L577,532L582,532L589,538L586,543L583,542L578,545L578,539L569,535L568,537L563,533L562,528L559,528L552,519L549,520L547,517L552,494L561,482L556,469L556,462L546,449L546,447L550,445L550,438L553,435L550,435L548,429L540,420L540,415L537,413L541,412L543,400L552,399L554,396L558,395L557,393Z"},{i2:"TJ",n:"Tadjikistan",d:"M290,190L297,181L296,178L297,173L292,169L294,166L296,165L302,168L307,163L305,161L310,162L312,157L315,158L321,156L323,160L319,162L323,165L319,167L315,164L312,164L309,165L308,169L318,171L319,173L325,172L327,176L330,178L342,177L341,186L349,189L348,198L349,201L347,202L343,200L338,201L338,199L335,198L320,203L319,198L322,190L319,189L320,185L318,183L311,187L310,191L304,190L302,194L299,191L291,193L290,190Z"},{i2:"TW",n:"Taïwan",d:"M764,338L761,352L754,345L751,335L757,319L762,315L765,317L765,323L764,338Z"},{i2:"SY",n:"Syrie",d:"M53,100L55,102L60,100L64,95L68,100L74,101L80,108L91,109L97,112L102,113L102,116L91,119L87,126L78,137L38,140L34,131L41,122L44,123L48,120L49,115L46,113L53,100Z"},{i2:"LK",n:"Sri Lanka",d:"M357,495L364,501L375,523L372,532L362,536L356,533L354,526L353,512L354,514L358,498L362,499L357,495Z"},{i2:"KR",n:"Corée du Sud",d:"M770,175L775,182L775,184L771,183L769,186L772,186L777,194L776,202L779,205L777,207L780,210L784,204L786,207L786,203L788,203L788,201L794,200L793,198L799,195L798,185L797,186L792,173L780,162L779,166L771,168L770,175ZM780,222L786,220L786,218L780,222Z"}
2164,{i2:"SA",n:"Arabie saoudite",d:"M101,337L74,332L65,333L52,342L50,337L37,330L26,326L22,322L20,323L17,330L13,332L12,318L8,301L8,287L2,276L1,268L3,257L6,250L7,235L2,225L4,213L4,176L0,173L9,161L16,168L24,164L30,166L36,163L35,149L53,152L61,159L69,175L79,204L99,217L99,223L105,225L105,235L112,251L109,256L109,269L110,275L114,277L113,279L115,280L119,298L141,309L143,317L131,336L101,337Z"},{i2:"QA",n:"Qatar",d:"M113,276L110,274L112,266L119,260L120,263L118,273L113,276Z"},{i2:"PH",n:"Philippines",d:"M767,387L765,388L764,398L767,414L765,415L761,413L761,416L766,428L770,431L771,426L775,428L772,434L773,438L780,438L784,434L793,440L792,433L798,436L800,440L807,440L807,443L809,444L809,438L805,438L802,433L804,431L799,429L797,433L795,429L792,428L788,431L788,433L784,431L778,420L779,413L784,410L786,400L782,394L782,386L778,388L767,387ZM785,438L787,441L788,438L785,438ZM771,442L780,453L783,452L783,443L779,440L771,442ZM768,455L769,458L772,457L771,455L768,455ZM789,455L788,456L791,457L791,470L798,465L801,457L789,455ZM745,500L757,489L759,482L768,474L765,466L763,475L746,497L745,500ZM799,509L796,509L794,511L796,512L799,509ZM786,520L789,519L790,518L786,517L786,520ZM810,431L807,429L808,433L810,431ZM811,443L813,447L819,450L820,454L827,456L824,451L824,444L820,441L811,443ZM802,445L801,452L803,448L810,452L808,448L802,445ZM813,454L815,460L818,460L819,467L822,468L821,465L823,466L824,465L820,456L813,454ZM806,478L811,466L810,457L806,472L806,478ZM817,469L813,469L811,474L818,472L817,469ZM806,480L804,474L806,463L803,462L800,463L800,472L796,476L803,483L806,480ZM827,470L828,478L822,480L821,484L818,484L816,489L812,492L812,487L808,485L803,492L798,495L795,507L797,506L801,497L803,499L806,497L809,499L810,495L811,494L817,498L816,503L819,510L827,512L829,509L830,514L832,513L833,507L830,502L832,496L834,495L839,505L838,499L841,493L838,481L835,481L837,478L835,473L827,470Z"},{i2:"PK",n:"Pakistan",d:"M358,219L361,227L356,231L347,232L337,227L332,230L332,234L335,235L332,237L333,240L331,243L333,248L336,248L336,251L341,254L333,258L332,266L325,271L324,274L319,276L313,284L308,286L302,294L292,295L289,291L279,298L278,302L284,306L282,312L286,316L288,330L276,330L267,326L265,330L259,331L254,327L253,318L249,316L250,312L247,308L245,308L247,309L248,309L231,308L227,304L221,305L204,301L209,290L215,288L222,289L224,285L220,282L223,272L216,266L211,250L224,259L237,263L257,263L260,253L266,250L271,251L278,247L284,250L288,248L293,237L300,235L298,227L308,229L309,224L316,218L314,209L324,203L348,205L354,210L354,219L358,219Z"},{i2:"OM",n:"Oman",d:"M158,280L162,277L162,274L159,276L158,280ZM105,366L115,365L124,368L130,361L138,362L144,355L154,355L158,342L161,340L164,342L180,327L181,324L178,321L175,311L161,301L158,288L155,290L155,288L153,288L150,294L152,297L147,297L142,305L141,309L143,317L131,336L101,337L105,366Z"},{i2:"KP",n:"Corée du Nord",d:"M780,162L779,166L771,168L770,175L766,176L762,175L760,178L757,177L758,175L754,175L755,170L758,168L755,167L754,160L749,159L748,160L745,156L754,144L758,133L761,135L768,134L768,132L765,129L771,126L773,121L775,120L774,114L776,114L783,119L780,121L779,127L782,136L770,152L770,157L780,162Z"},{i2:"NP",n:"Népal",d:"M450,313L448,329L441,329L439,326L436,328L427,325L426,323L422,323L412,315L405,315L400,313L377,296L383,286L386,284L389,285L393,282L397,283L409,296L414,296L415,300L420,304L423,304L423,307L428,308L430,312L432,310L441,313L450,313Z"},{i2:"MN",n:"Mongolie",d:"M463,92L466,89L475,88L480,83L496,76L501,79L508,79L511,85L530,87L536,81L532,74L539,63L561,69L563,77L570,81L575,81L584,76L593,77L597,80L602,80L602,83L607,86L622,85L635,79L644,70L652,72L659,70L657,90L659,92L661,94L666,91L671,92L673,88L678,87L689,93L691,98L675,103L675,105L669,107L668,113L665,117L657,119L652,127L639,126L637,134L642,140L636,145L632,151L624,156L605,160L592,168L588,168L588,166L582,167L569,164L564,160L524,160L516,144L511,143L502,137L483,134L481,130L484,125L483,116L478,106L471,104L464,98L463,92Z"},{i2:"MY",n:"Malaisie",d:"M753,543L762,540L758,536L759,534L768,531L769,528L759,525L755,527L757,525L755,523L750,526L751,519L745,515L742,519L742,515L734,531L729,534L731,537L726,540L729,545L726,545L725,540L722,542L724,545L722,549L715,545L706,560L691,566L689,570L687,570L685,579L687,581L673,578L670,576L669,578L680,587L694,584L700,578L705,577L713,579L722,576L725,570L724,567L728,564L728,560L731,558L732,549L734,544L753,543ZM569,535L574,562L581,569L581,573L605,588L610,586L610,585L613,587L608,575L604,572L603,554L599,546L590,539L589,538L585,543L583,542L578,545L578,539L574,537L569,535Z"},{i2:"LB",n:"Liban",d:"M46,113L49,115L48,120L34,126L31,124L46,113Z"},{i2:"LA",n:"Laos",d:"M582,371L588,378L589,376L591,377L590,382L593,386L598,387L602,384L607,387L605,389L611,394L608,398L603,398L601,402L614,408L614,410L629,424L631,429L638,433L636,436L642,441L640,448L634,451L630,449L628,450L625,452L626,456L618,454L617,452L620,450L621,438L612,431L612,422L603,412L596,411L590,418L584,414L575,422L573,421L576,407L575,401L568,401L568,394L564,393L565,389L568,387L569,383L573,380L574,383L580,383L577,372L579,370L582,371Z"},{i2:"KG",n:"Kirghizistan",d:"M323,165L328,167L341,163L334,159L332,153L329,157L321,150L330,146L328,143L333,140L348,147L350,141L355,139L363,145L375,146L391,151L398,158L398,159L383,164L380,167L371,166L365,172L360,172L359,168L354,169L346,172L343,177L330,178L327,176L325,172L319,173L318,171L308,169L309,165L312,164L315,164L319,167L323,165Z"},{i2:"KW",n:"Koweït",d:"M105,225L99,223L99,217L93,213L102,205L108,209L107,214L103,214L106,215L105,225Z"},{i2:"KZ",n:"Kazakhstan",d:"M328,144L313,149L306,157L304,156L303,150L294,147L295,138L291,137L295,128L293,128L289,118L285,118L268,113L264,102L253,84L233,83L217,120L213,118L212,110L208,104L200,103L195,105L200,96L194,87L196,76L194,72L195,71L202,75L201,70L206,67L217,72L215,68L221,64L224,57L221,54L218,54L214,49L198,50L195,46L196,44L198,45L199,34L194,31L196,25L195,22L201,17L204,11L211,6L213,14L215,15L219,8L237,4L239,8L245,8L246,11L250,13L252,26L255,21L259,28L266,26L271,30L274,29L277,30L281,38L286,36L291,40L294,39L297,35L291,25L298,24L299,20L302,18L308,20L304,15L307,13L304,11L308,8L311,10L331,12L334,10L351,12L357,9L364,13L367,12L366,24L373,24L373,29L375,27L381,29L377,32L377,35L381,34L383,36L392,31L401,29L398,33L404,42L413,70L419,65L422,71L429,72L435,70L439,73L441,79L445,81L446,86L453,87L456,85L456,87L460,92L456,93L454,98L448,99L445,112L439,114L427,109L420,125L422,127L421,130L415,127L401,130L405,132L403,138L404,148L399,152L398,158L391,151L375,146L363,145L355,139L350,141L348,147L336,140L332,140L328,144Z"},{i2:"JO",n:"Jordanie",d:"M34,131L38,140L58,138L54,150L55,151L51,153L35,149L36,163L30,166L24,164L16,
2164168L9,161L32,131L34,131Z"},{i2:"JP",n:"Japon",d:"M859,61L841,54L840,56L846,65L850,78L843,81L846,84L844,90L851,100L853,95L856,93L848,91L848,88L852,88L857,83L869,84L868,73L874,68L877,61L874,64L871,61L869,54L867,60L859,61ZM857,140L855,136L856,142L857,140ZM856,97L857,101L859,98L861,102L859,104L856,101L854,102L856,116L860,118L862,126L863,136L859,148L854,156L849,153L851,148L848,151L850,158L848,166L848,172L844,174L842,173L826,182L818,197L816,198L816,203L823,200L827,201L826,195L833,193L843,184L849,183L849,190L856,194L858,185L861,182L857,179L858,175L859,178L862,176L861,179L870,175L872,168L875,172L875,164L878,164L877,159L880,158L881,166L883,162L883,158L885,154L880,150L879,140L874,130L876,126L874,114L868,106L864,103L860,96L856,97ZM840,190L836,193L836,196L832,196L827,206L830,204L834,211L836,210L839,200L845,201L847,194L844,190L840,190ZM817,204L813,205L808,214L813,217L810,216L812,220L814,218L816,217L814,213L817,216L819,231L823,233L822,229L823,227L825,234L827,230L826,229L829,228L829,211L827,208L824,208L824,205L820,206L817,204ZM817,283L814,286L814,293L817,286L817,283Z"},{i2:"IL",n:"Israël",d:"M38,125L36,129L30,133L29,130L25,133L23,136L24,138L20,141L24,142L10,160L15,139L31,124L33,126L38,125Z"},{i2:"PS",n:"Palestine",d:"M30,133L24,142L20,141L24,138L23,136L28,130L30,133Z"},{i2:"IQ",n:"Irak",d:"M91,119L107,115L115,120L115,124L119,124L117,138L122,144L119,144L118,150L111,153L107,159L109,167L107,172L114,182L115,190L110,197L112,199L110,204L112,211L102,205L93,213L79,204L61,160L53,152L55,151L54,150L58,138L78,137L87,126L91,119Z"},{i2:"IR",n:"Iran",d:"M184,154L182,159L181,157L169,156L161,151L157,141L151,135L153,126L151,126L150,119L152,119L152,116L155,115L154,111L137,113L133,109L132,98L129,101L126,100L123,112L119,115L121,118L117,132L117,138L122,144L119,144L118,150L111,153L107,159L109,167L107,172L114,182L115,190L110,197L112,199L110,204L112,210L115,211L118,207L120,214L125,214L126,239L134,249L141,262L149,268L163,265L168,267L169,283L182,291L194,296L195,295L202,301L209,290L215,288L222,289L224,285L220,282L223,272L216,266L211,250L222,242L223,236L216,233L219,216L223,213L221,210L222,205L226,204L225,202L233,193L236,182L230,179L225,167L218,163L209,153L198,151L191,155L184,154ZM163,268L159,266L154,268L160,269L163,268Z"},{i2:"ID",n:"Indonésie",d:"M654,555L652,557L654,559L654,561L656,558L654,555ZM529,578L521,575L529,580L529,578ZM583,585L586,584L585,581L582,582L583,585ZM664,582L663,589L663,594L667,597L666,602L668,603L667,606L672,606L675,609L678,626L685,625L686,627L694,624L696,631L705,627L708,623L711,626L714,625L715,627L722,624L722,627L724,626L726,633L739,626L740,623L743,621L741,619L745,612L743,611L744,608L742,607L747,602L747,599L749,600L755,595L754,584L759,577L758,575L765,577L769,574L756,565L759,562L747,550L755,548L751,545L752,543L747,543L734,544L733,546L731,558L728,560L728,564L724,567L725,570L722,576L713,579L705,577L700,578L694,584L680,587L670,580L670,576L664,582ZM613,591L616,592L617,590L616,588L613,591ZM595,590L594,593L600,595L599,593L595,590ZM536,589L542,598L544,598L545,593L539,588L536,589ZM616,601L617,603L621,603L616,601ZM520,547L516,547L519,555L529,565L534,567L541,575L542,580L552,585L558,600L564,603L571,611L577,626L585,635L618,661L618,657L623,659L626,657L630,659L631,637L633,631L626,624L618,627L620,622L616,619L614,612L608,610L604,607L604,603L608,601L607,598L603,596L598,599L595,600L600,596L593,594L589,588L583,585L578,580L576,580L
2164577,583L573,581L564,571L549,562L548,559L540,551L527,550L520,547ZM550,603L549,609L550,609L552,606L550,603ZM669,607L669,610L672,608L672,607L669,607ZM560,621L556,613L553,613L553,616L557,621L560,621ZM629,616L629,618L628,616L626,617L623,621L630,622L632,629L640,631L641,625L636,625L633,616L629,616ZM650,625L650,631L656,630L656,625L650,625ZM570,631L570,633L573,637L573,633L570,631ZM709,663L706,666L714,666L720,663L709,663ZM642,661L633,660L631,665L625,669L635,670L639,671L638,674L657,677L669,675L693,679L711,677L726,680L724,677L724,671L709,671L706,670L704,664L689,663L685,661L681,666L663,667L658,662L644,659L642,661ZM838,593L844,591L848,590L838,591L838,593ZM812,590L812,594L814,591L815,594L818,590L812,590ZM828,595L834,594L837,592L828,592L828,595ZM834,557L831,556L820,567L810,569L791,567L786,573L783,572L778,584L779,592L778,590L776,593L774,604L769,613L770,620L777,620L779,625L776,639L778,641L788,640L786,635L787,620L785,613L789,609L793,609L792,618L800,622L800,629L804,629L805,626L813,623L813,620L806,616L806,609L796,600L805,595L811,587L816,587L817,585L814,583L802,589L798,589L793,595L788,596L782,588L782,580L786,576L824,571L834,557ZM743,628L743,622L741,624L741,630L743,628ZM815,623L810,635L811,637L817,632L814,631L815,626L816,627L815,623ZM811,626L807,629L807,634L811,633L812,629L811,626ZM803,632L802,634L804,636L805,633L803,632ZM830,662L837,660L838,658L831,659L830,662ZM825,661L819,662L818,665L821,665L825,661ZM813,667L815,662L814,661L814,663L808,668L788,667L782,669L782,672L783,674L801,672L813,667ZM836,666L823,675L822,683L831,679L837,672L836,669L838,667L836,666ZM760,670L764,674L760,675L758,673L753,673L750,675L749,680L774,673L772,670L770,671L760,670ZM744,673L742,675L742,678L740,679L747,679L749,673L744,673ZM732,672L724,674L731,678L732,680L738,675L732,672ZM783,678L773,683L788,688L792,684L783,678ZM819,686L814,689L814,690L818,688L819,686ZM866,539L864,542L865,545L868,542L868,539L866,539ZM939,555L945,559L949,557L944,555L939,555ZM862,553L861,547L862,544L858,548L857,556L861,570L865,574L869,575L864,570L862,564L863,562L873,563L866,559L870,554L869,549L865,552L862,558L859,558L862,553ZM888,562L887,564L892,565L893,564L890,562L895,564L898,562L894,560L888,562ZM948,566L955,563L941,565L941,566L948,566ZM892,571L893,574L895,574L896,570L892,571ZM857,572L859,577L863,576L860,574L859,571L857,572ZM883,583L887,584L890,580L889,579L883,583ZM860,582L859,586L866,584L864,582L860,582ZM996,560L964,557L957,563L957,566L951,570L946,579L940,585L936,584L933,577L932,581L928,576L928,566L925,560L909,560L898,568L895,575L905,574L906,578L909,580L926,575L924,581L918,580L914,585L906,587L915,590L917,598L922,595L922,590L925,585L924,590L927,593L937,592L935,594L940,596L961,596L970,599L970,602L972,601L971,603L973,603L974,608L978,612L976,614L981,615L977,617L981,619L979,627L982,623L984,625L991,620L990,623L1000,630L996,560ZM890,593L868,597L865,601L865,604L867,600L871,602L875,599L881,600L885,598L895,601L895,597L890,593ZM846,604L847,608L851,610L858,607L858,604L854,602L846,604ZM934,608L930,616L933,618L937,616L934,608ZM930,618L930,624L931,625L934,619L930,618ZM980,621L975,619L971,622L967,632L975,628L980,621ZM905,639L905,633L901,638L900,644L905,639ZM853,649L845,655L852,653L855,650L853,649Z"},{i2:"IN",n:"Inde",d:"M261,329L261,333L266,331L262,333L263,338L268,342L272,344L280,342L276,347L267,348L265,346L264,348L273,363L278,367L291,365L294,362L292,358L295,356L294,354L300,355L298,356L297,358L299,358L297,361L302,361L297,363L298,372L295,380L297,387L296,386L295,388L297,388L295,393L298,421L305,439L308,460L320,490L321,500L330,510L336,508L340,501L351,501L347,499L346,497L351,490L356,490L357,481L355,479L363,459L361,456L362,455L363,457L362,440L365,434L369,433L372,434L375,429L385,427L387,422L405,411L419,398L416,398L417,396L427,396L432,392L435,388L434,382L445,376L447,373L445,372L445,371L447,373L446,379L451,379L452,374L452,379L454,378L455,379L455,363L452,357L454,351L447,347L451,342L456,341L448,334L452,329L451,327L455,331L457,329L460,333L463,331L465,341L485,343L489,345L487,346L484,353L479,354L477,359L478,364L479,363L481,366L484,359L487,359L490,377L491,375L493,376L495,374L496,366L498,365L497,355L505,357L511,345L509,342L515,334L515,328L524,321L529,321L533,323L531,318L535,314L533,310L525,309L528,306L527,303L524,304L526,301L523,299L517,303L510,300L502,306L497,307L491,315L482,316L482,318L486,321L485,325L470,325L464,326L459,325L455,321L456,312L450,313L448,329L427,325L426,323L422,323L412,315L405,315L400,313L377,297L381,288L387,284L381,279L380,276L375,273L372,269L369,269L370,262L368,256L370,256L372,258L375,257L373,241L375,238L370,234L370,225L368,224L356,231L348,232L337,227L334,228L332,234L335,235L332,237L333,240L331,243L333,248L336,248L336,251L341,254L333,258L332,266L325,271L323,275L319,276L313,284L308,286L302,294L292,295L289,291L279,298L278,302L284,306L282,312L286,316L288,330L276,330L267,326L265,330L261,329ZM490,486L493,475L492,471L494,465L491,466L491,478L488,482L490,486ZM501,530L499,531L501,535L502,533L501,530Z"},{i2:"GE",n:"Géorgie",d:"M132,81L130,74L128,74L122,69L127,66L129,58L125,45L127,45L133,53L140,58L143,68L148,69L149,71L150,70L154,75L152,78L155,84L152,86L154,91L151,92L146,84L141,85L132,81Z"},{i2:null,n:"Chypre du Nord",d:"M36,100L33,98L33,96L30,95L29,93L32,92L36,95L44,97L37,97L36,100Z"},{i2:"CY",n:"Chypre",d:"M29,93L33,96L33,98L36,101L27,100L25,93L29,93Z"},{i2:"CN",n:"République populaire de Chine",d:"M633,375L645,373L644,371L651,375L655,372L658,374L656,380L659,385L664,385L665,383L661,379L663,374L665,376L669,372L674,371L677,367L681,368L681,365L684,367L687,365L688,362L689,363L692,361L689,354L691,352L696,357L719,349L722,341L726,341L731,333L729,331L736,328L738,321L741,320L739,318L743,318L742,312L740,313L738,311L741,311L744,308L740,303L745,304L748,295L748,288L751,284L755,284L753,280L754,277L752,275L756,274L755,271L754,269L751,272L755,266L747,264L742,267L741,265L738,266L740,264L743,264L751,256L748,252L738,247L733,249L737,246L747,248L749,247L738,240L729,224L719,220L725,206L723,204L727,204L727,199L735,193L739,194L740,187L732,189L724,187L720,189L718,195L714,196L711,195L709,188L699,187L696,182L697,178L706,176L708,169L715,162L718,154L723,152L728,156L723,168L723,170L728,169L727,172L723,175L724,177L728,174L735,164L745,158L748,151L754,144L757,134L768,134L768,132L765,129L771,126L773,121L775,120L774,114L781,117L779,115L783,112L782,107L774,93L778,86L786,86L787,84L787,71L783,60L785,55L782,50L779,49L773,55L771,61L762,64L753,54L745,51L734,53L731,52L725,43L705,24L691,23L677,30L673,37L677,37L679,42L675,61L677,65L669,72L661,71L657,90L661,94L666,91L671,92L673,88L678,87L689,93L691,98L675,103L675,105L669,107L668,113L665,117L657,119L652,127L639,126L637,134L642,140L636,145L632,151L624,156L605,160L592,168L588,168L588,166L582,167L569,164L564,160L524,160L516,144L511,143L502,137L483,134L481,130L484,125L483,116L478,106L471,104L464,98L463,92L457,92L454,98L448,99L445,112L439,114L427,109L420,125L422,127L421,130L415,127L401,130L405,132L403,138L404,148L401,149L402,151L399,153L398,159L386,163L380,167L371,166L365,172L360,172L359,168L354,169L346,172L344,177L342,177L341,186L345,187L349,190L348,198L349,201L342,203L353,210L353,216L355,219L358,219L362,223L370,225L370,234L375,238L373,241L375,257L372,258L370,256L368,256L370,262L369,269L372,269L388,285L391,282L397,283L409,296L414,296L415,300L420,304L423,304L423,307L428,308L430,312L432,310L434,312L436,310L445,314L455,311L456,312L457,319L466,310L477,313L479,312L485,316L492,314L497,307L502,306L510,300L517,303L523,299L526,301L524,304L527,303L528,306L525,309L535,311L538,308L542,312L544,318L547,318L548,336L540,342L537,349L539,353L538,356L550,354L549,356L551,364L557,366L554,374L561,375L564,381L568,381L573,378L574,383L579,384L577,372L578,370L582,371L586,367L591,369L593,366L595,368L597,366L600,368L602,365L607,364L612,358L618,362L627,363L625,366L626,372L633,375ZM671,391L667,387L666,388L654,391L648,398L649,406L6
216458,408L663,405L671,391Z"},{i2:"KH",n:"Cambodge",d:"M641,447L639,453L642,460L642,470L631,476L631,479L626,480L629,489L625,487L618,488L616,492L611,494L606,492L603,493L604,489L602,487L598,490L598,484L591,472L588,463L591,462L595,455L613,452L626,456L625,452L630,449L635,451L641,447Z"},{i2:"MM",n:"Birmanie",d:"M564,393L557,393L558,395L554,396L552,399L543,400L541,412L537,413L540,415L540,420L548,429L550,435L553,435L550,438L550,445L546,447L546,449L556,462L556,469L561,482L552,494L551,501L549,494L554,483L551,483L550,468L546,460L545,463L544,453L542,451L540,439L541,433L537,433L536,428L532,424L531,432L528,434L525,431L527,434L517,442L517,438L515,441L513,441L512,437L510,440L510,434L506,439L509,423L504,405L503,409L498,404L502,405L503,403L500,400L501,398L496,397L495,399L494,393L492,395L492,393L491,391L491,394L488,390L486,384L487,382L490,384L490,377L491,375L494,376L495,374L497,355L505,357L511,345L509,342L515,334L515,328L524,321L529,321L533,323L531,318L535,314L537,308L542,312L544,318L547,318L548,327L548,336L540,342L538,347L538,356L550,354L549,356L551,364L557,366L554,375L561,375L564,381L573,378L568,386L568,387L565,389L564,393Z"}
2164,{i2:"BN",n:"Brunei",d:"M725,541L726,545L729,545L727,540L725,541ZM722,542L725,539L715,544L722,549L724,545L722,542Z"},{i2:"BT",n:"Bhoutan",d:"M479,312L482,318L486,321L485,325L470,325L464,326L458,324L455,321L462,312L467,310L471,310L470,312L479,312Z"},{i2:"BD",n:"Bangladesh",d:"M456,375L458,378L460,372L461,378L465,371L464,374L467,374L465,377L467,377L471,372L469,368L471,363L468,360L471,361L471,359L474,370L479,367L483,372L485,385L487,389L486,383L490,384L487,359L484,359L481,366L479,363L478,364L477,359L479,354L484,353L487,346L490,346L485,343L465,341L463,331L460,333L457,329L455,331L452,327L448,334L456,341L451,342L447,347L454,351L452,357L455,363L456,375ZM473,374L473,371L470,367L472,372L470,375L473,374Z"},{i2:"AZ",n:"Azerbaïdjan",d:"M155,123L161,119L167,111L173,113L169,105L169,93L160,95L158,93L155,84L152,85L154,91L152,92L146,84L143,85L144,91L142,94L143,98L139,100L143,107L140,113L154,111L155,115L150,120L152,126L153,126L155,123ZM133,100L133,109L137,112L138,105L134,102L135,100L133,100Z"},{i2:"AM",n:"Arménie",d:"M133,99L131,94L128,91L132,86L132,81L143,85L144,91L142,94L143,98L139,100L143,107L140,113L137,112L138,104L133,99Z"},{i2:"AF",n:"Afghanistan",d:"M275,182L289,190L291,193L299,191L302,194L304,190L310,191L311,187L318,183L320,185L319,189L322,190L319,198L320,203L335,198L338,199L337,200L343,200L345,200L347,202L343,202L344,204L339,205L324,203L315,208L316,218L309,224L308,229L298,227L300,235L293,237L288,248L284,250L278,247L271,251L266,250L260,253L256,263L237,263L224,259L211,250L222,242L223,236L216,233L219,216L223,213L221,210L222,205L226,204L225,202L229,199L233,192L240,199L243,199L247,198L249,194L256,194L261,192L266,185L272,185L275,182Z"},{i2:null,n:"glacier de Siachen",d:"M361,227L359,221L368,224L364,226L361,227Z"}]},{key:"southam",viewBox:"0 0 1000 1454",fr:"Amérique latine",en:"Latin America",countries:[{i2:"VE",n:"Venezuela",d:"M376,23L373,27L365,27L375,29L376,23ZM457,77L432,81L425,77L433,77L443,61L426,50L423,55L415,48L410,52L405,43L401,47L402,42L397,36L420,32L367,35L379,37L349,47L333,43L324,35L283,39L277,25L268,19L250,19L243,4L236,10L238,16L247,15L247,19L210,31L210,40L219,57L215,69L205,71L196,56L207,37L200,18L210,15L214,12L200,16L184,34L168,70L181,71L189,89L188,105L198,115L239,116L254,133L297,131L289,150L288,167L300,190L288,203L294,203L303,212L310,237L323,247L337,242L339,248L386,214L386,210L372,208L368,185L356,170L373,177L388,177L398,184L401,175L427,169L447,156L430,134L436,128L436,118L453,111L445,100L465,84L457,77Z"},{i2:"UY",n:"Uruguay",d:"M582,994L574,1007L553,1018L539,1015L529,1017L512,1007L499,1007L489,991L496,973L495,953L506,915L514,918L521,914L535,929L536,935L544,930L577,957L588,972L580,981L582,994Z"},{i2:"FK",n:"îles Malouines",d:"M454,1364L457,1368L453,1370L457,1371L447,1377L451,1380L462,1375L471,1364L454,1364ZM476,1361L474,1369L466,1378L469,1382L474,1380L472,1376L480,1378L479,1375L492,1369L490,1363L485,1367L483,1362L476,1361Z"},{i2:"SR",n:"Suriname",d:"M591,138L583,155L583,166L593,185L584,210L578,212L571,206L555,210L550,208L546,213L549,222L533,218L520,189L513,189L504,176L507,157L520,153L527,133L551,140L552,134L585,136L591,138Z"},{i2:"PE",n:"Pérou",d:"M244,357L226,356L204,364L182,379L175,400L177,408L164,419L165,427L160,433L183,463L178,473L196,474L201,484L221,483L235,470L234,505L257,502L277,535L271,544L270,561L274,572L265,586L269,595L264,604L269,615L277,619L261,638L264,645L257,650L256,661L246,664L227,651L222,642L146,606L127,590L117,574L119,563L98,536L96,527L87,520L59,463L31,425L6,411L11,401L0,381L2,371L20,351L24,361L17,365L21,369L18,374L25,371L36,373L43,383L50,384L57,374L63,348L67,349L73,338L98,328L122,304L128,283L120,273L128,271L142,277L150,290L163,295L179,320L195,319L205,313L212,317L222,314L241,323L227,348L236,348L244,357Z"},{i2:"PY",n:"Paraguay",d:"M498,691L505,717L502,741L523,744L532,740L544,746L552,782L568,779L575,784L563,838L544,856L535,854L530,859L488,853L498,829L509,815L507,811L463,784L440,776L407,744L415,707L425,687L480,679L498,691Z"},{i2:"GY",n:"Guyana",d:"M445,150L430,134L436,128L436,118L453,111L445,100L464,85L460,78L494,103L490,124L498,114L522,129L522,150L507,157L504,173L513,189L520,189L522,200L538,220L520,219L504,229L497,227L493,234L487,236L478,232L468,224L461,204L464,184L471,177L467,167L458,164L461,152L458,149L445,150Z"},{i2:"EC",n:"Ãquateur",d:"M127,272L120,273L128,283L122,304L98,328L73,338L67,349L63,348L57,374L50,384L43,383L36,373L25,371L18,374L21,369L17,365L24,361L20,351L28,345L33,332L30,321L28,332L26,328L21,336L6,327L10,320L6,301L16,290L19,290L15,285L24,273L24,258L48,248L49,243L74,255L81,264L101,266L105,262L127,272Z"},{i2:"CO",n:"Colombie",d:"M218,8L200,16L184,34L168,70L181,71L189,89L188,105L198,115L239,116L254,133L297,131L289,150L288,167L300,190L288,203L294,203L303,212L310,234L306,238L305,227L299,218L287,226L281,221L282,227L245,228L245,242L257,242L260,250L241,253L241,268L250,276L255,290L244,357L236,348L227,348L241,323L222,314L212,317L205,313L195,319L179,320L163,295L150,290L138,274L105,262L101,266L81,264L74,255L61,251L45,239L50,234L55,236L55,223L71,214L87,187L81,187L77,181L83,170L77,153L83,147L79,139L81,130L69,116L73,106L77,109L85,100L81,85L94,100L91,86L111,69L119,66L122,50L118,52L137,30L148,32L144,35L146,37L152,25L170,25L206,0L215,2L218,8Z"},{i2:"CL",n:"Chili",d:"M240,1200L235,1190L240,1187L237,1175L228,1174L227,1204L236,1206L240,1200ZM257,1229L249,1226L249,1236L254,1235L257,1229ZM239,1224L228,1235L240,1248L244,1244L238,1232L242,1226L239,1224ZM238,1255L235,1245L231,1257L238,1255ZM243,1317L237,1302L232,1305L238,1318L243,1317ZM234,1319L229,1306L227,
21641307L229,1322L234,1319ZM236,1321L229,1326L231,1331L237,1324L236,1321ZM241,1319L233,1341L241,1344L241,1337L244,1334L247,1346L248,1331L241,1319ZM246,1350L238,1347L237,1354L246,1350ZM254,1374L245,1373L245,1380L254,1374ZM246,664L257,729L254,762L249,771L254,778L252,801L255,814L251,826L250,865L241,895L246,910L241,932L249,975L245,985L248,997L229,1074L221,1079L234,1118L227,1159L235,1173L241,1172L245,1166L252,1169L256,1165L255,1168L248,1174L254,1175L257,1184L250,1182L253,1198L249,1204L248,1222L259,1227L259,1231L249,1242L257,1249L245,1251L249,1259L247,1273L246,1258L244,1265L242,1267L237,1267L243,1263L241,1249L239,1257L226,1261L229,1267L219,1279L224,1284L222,1279L229,1274L230,1279L241,1279L244,1287L240,1292L246,1295L239,1298L246,1303L253,1296L259,1306L241,1304L244,1314L251,1313L247,1316L249,1333L252,1335L253,1325L254,1325L253,1333L258,1337L251,1337L257,1345L249,1350L260,1355L256,1355L260,1362L264,1355L263,1364L258,1362L249,1353L250,1360L244,1361L249,1368L262,1371L264,1378L260,1380L271,1386L283,1380L274,1374L280,1376L285,1379L286,1389L284,1392L281,1383L268,1391L261,1389L267,1399L278,1395L273,1403L281,1407L284,1395L301,1395L285,1400L282,1410L290,1414L292,1407L306,1399L300,1414L297,1409L291,1412L308,1421L312,1419L311,1398L331,1385L342,1386L321,1381L293,1383L285,1374L283,1357L272,1359L262,1336L273,1318L276,1306L271,1299L280,1272L276,1250L281,1242L269,1233L282,1232L283,1228L272,1225L270,1201L263,1196L261,1182L267,1176L260,1149L261,1125L264,1109L273,1100L266,1084L263,1065L275,1047L271,1030L282,1007L281,987L276,985L263,945L269,925L275,920L270,902L275,882L284,871L289,854L299,849L293,839L296,832L292,816L295,809L292,801L297,793L315,785L321,762L317,759L303,759L295,726L283,708L286,698L283,692L288,686L277,676L273,657L264,645L257,650L256,661L246,664ZM248,1383L254,1393L256,1393L257,1386L252,1380L248,1383ZM258,1402L265,1409L281,1413L276,1409L258,1402ZM341,1393L329,1391L323,1398L317,1397L321,1401L317,1406L321,1410L332,1409L323,1420L340,1430L337,1433L330,1428L324,1429L317,1423L321,1422L318,1415L315,1425L323,1433L316,1430L313,1432L303,1433L302,1436L346,1438L341,1393ZM283,1413L273,1417L283,1426L288,1423L287,1428L292,1427L296,1421L283,1413ZM298,1423L301,1430L313,1429L312,1425L298,1423ZM367,1441L353,1439L351,1441L355,1445L365,1446L367,1441ZM309,1442L323,1447L325,1445L323,1441L309,1442ZM329,1445L340,1451L338,1445L344,1446L345,1451L356,1454L347,1444L349,1440L330,1440L329,1445Z"},{i2:"BR",n:"Brésil",d:"M670,265L672,252L666,263L670,265ZM674,260L672,264L680,266L686,261L674,260ZM693,264L688,264L683,267L692,268L693,264ZM665,267L658,267L657,270L665,267ZM651,286L652,276L646,278L643,287L637,295L651,286ZM665,270L662,284L667,289L663,291L669,304L703,298L715,274L674,267L665,270ZM305,237L305,227L299,218L287,226L281,221L282,227L245,228L245,242L257,242L260,250L241,253L241,268L250,276L255,290L244,358L226,356L204,364L182,379L175,400L177,408L164,419L165,427L160,433L183,463L178,473L196,474L201,484L221,483L235,470L234,505L277,505L320,477L345,473L346,506L355,522L367,531L396,536L423,554L438,553L450,560L455,588L449,588L456,597L457,614L495,614L494,635L506,641L513,656L499,689L505,695L498,699L505,717L501,739L523,744L532,740L545,747L552,782L568,779L575,784L567,817L579,817L585,832L581,851L543,873L544,877L540,877L506,915L514,918L521,914L535,929L536,935L544,930L577,957L588,972L580,981L582,994L596,981L611,944L625,931L626,916L630,923L639,921L639,925L624,947L609,954L609,960L631,943L656,903L676,887L683,857L681,837L688,823L683,820L682,818L687,820L689,816L693,819L698,811L721,796L740,787L750,788L768,778L767,773L796,774L797,768L801,774L819,775L827,762L842,757L845,740L872,706L878,677L889,666L899,626L899,576L906,559L910,556L913,563L918,561L940,528L940,531L980,494L995,470L1000,446L993,407L987,397L953,389L927,360L896,339L863,338L822,323L805,332L804,324L793,340L801,322L800,318L795,322L793,319L798,315L795,308L786,302L781,307L778,299L739,281L720,283L713,291L715,299L713,301L707,298L696,307L691,320L687,323L694,303L670,308L664,303L660,285L637,298L621,297L636,293L652,266L682,240L681,229L664,219L654,176L648,171L615,216L598,212L586,216L571,206L555,210L550,208L546,213L549,222L524,218L504,229L497,227L493,234L486,235L468,224L461,204L464,184L471,177L467,167L458,164L461,152L447,149L447,156L439,164L401,175L398,184L388,177L373,177L356,170L368,185L372,208L386,210L386,215L373,220L369,229L349,238L341,248L336,241L323,247L305,237Z"},{i2:"BO",n:"Bolivie",d:"M273,657L261,638L277,619L269,615L264,604L269,595L265,586L274,572L270,561L271,544
2164L277,535L257,502L277,505L320,477L345,473L346,506L355,522L367,531L396,536L423,554L438,553L450,560L455,588L449,588L456,597L457,614L495,614L494,635L506,641L513,656L499,689L505,695L500,698L498,691L480,679L425,687L415,707L407,744L403,738L382,740L374,757L368,744L345,742L335,736L317,759L306,760L303,759L295,726L283,708L286,698L283,692L287,686L277,676L273,657Z"},{i2:"AR",n:"Argentine",d:"M501,924L540,877L544,877L543,873L581,851L585,833L581,820L567,817L562,840L544,856L535,854L530,859L488,853L498,829L509,815L507,811L463,784L440,776L404,739L382,740L374,757L368,744L363,742L345,742L335,736L333,743L326,745L317,759L321,762L315,785L297,793L292,801L295,809L292,816L296,832L293,839L299,849L289,854L284,871L275,882L270,902L275,920L269,925L263,945L276,985L281,987L282,1007L271,1030L275,1047L263,1065L266,1084L273,1100L264,1109L261,1125L260,1149L267,1176L261,1182L263,1196L270,1201L272,1225L283,1228L282,1232L269,1233L281,1242L276,1250L280,1272L271,1299L276,1306L273,1318L262,1336L272,1359L283,1357L285,1374L293,1383L321,1381L343,1386L334,1373L327,1372L332,1370L327,1360L330,1349L338,1342L330,1339L334,1333L340,1340L346,1336L350,1316L373,1294L366,1292L373,1281L369,1276L357,1275L344,1264L342,1256L351,1238L362,1232L371,1232L371,1225L376,1217L376,1202L390,1189L379,1183L387,1179L395,1187L401,1183L398,1170L388,1177L378,1171L375,1143L400,1150L421,1144L420,1129L426,1112L421,1109L420,1100L442,1104L492,1092L504,1085L520,1059L519,1048L508,1041L512,1027L492,1012L488,1003L490,978L495,975L495,953L501,924ZM346,1438L375,1440L388,1437L392,1432L377,1430L362,1421L344,1406L347,1402L341,1393L346,1438Z"}]},{key:"africa",viewBox:"0 0 1000 1071",fr:"Afrique",en:"Africa",countries:[{i2:"ZW",n:"Zimbabwe",d:"M700,892L673,889L669,886L669,883L654,879L650,872L650,864L644,863L643,858L629,849L616,823L642,826L656,810L668,805L670,797L682,792L692,792L693,797L704,797L729,808L728,833L723,841L727,857L719,867L717,876L700,892Z"},{i2:"ZM",n:"Zambie",d:"M692,792L679,792L670,797L669,803L668,805L656,810L638,827L625,826L609,819L589,821L571,805L570,800L569,752L598,751L599,720L605,724L605,728L618,725L619,731L629,735L641,736L646,730L652,740L664,745L673,757L681,756L684,759L685,739L681,740L680,743L674,742L664,730L668,715L665,695L672,689L673,684L700,680L705,686L711,687L736,701L743,715L737,721L736,739L740,742L732,747L731,756L727,761L731,768L734,767L690,782L692,792Z"},{i2:"UG",n:"Ouganda",d:"M749,571L702,571L696,572L689,578L684,577L689,544L709,525L708,522L701,519L702,503L707,499L717,498L722,503L735,497L742,499L749,492L756,500L756,508L763,518L765,529L749,553L749,571Z"},{i2:"TN",n:"Tunisie",d:"M429,61L428,72L411,82L409,85L409,95L399,103L395,76L387,69L378,50L378,46L388,37L391,30L391,11L396,5L410,0L412,3L417,2L419,9L427,4L428,7L419,17L426,31L411,48L414,52L419,53L419,56L422,54L425,60L429,61Z"},{i2:"TG",n:"Togo",d:"M258,387L255,397L263,403L267,417L265,449L268,459L259,462L250,450L253,427L248,421L251,412L247,410L250,398L243,391L244,385L258,387Z"},{i2:"TZ",n:"Tanzanie",d:"M837,630L834,630L835,638L837,630ZM831,654L829,644L828,642L826,649L831,654ZM704,685L747,702L748,700L753,703L756,711L757,723L761,731L776,729L781,733L791,731L797,733L805,727L813,729L826,725L843,715L833,708L832,695L827,684L829,677L827,670L831,662L821,648L827,627L804,609L804,602L750,571L698,572L703,588L698,593L697,599L702,601L702,604L689,621L681,623L683,651L693,662L704,685Z"},{i2:"SZ",n:"Eswatini",d:"M706,945L707,958L705,965L696,963L689,956L690,951L698,942L706,945Z"},{i2:"SS",n:"Soudan du Sud",d:"M768,472L742,499L735,497L722,503L717,498L707,499L702,503L683,486L678,490L661,489L649,476L647,470L637,465L635,456L619,444L617,439L612,434L603,430L602,425L607,422L614,402L627,399L637,413L657,411L660,415L671,415L688,401L700,409L705,408L724,388L722,379L718,374L734,371L734,393L746,401L750,424L747,428L737,428L734,436L747,442L759,454L768,472Z"},{i2:"SD",n:"Soudan",d:"M749,412L746,412L746,401L734,393L734,371L727,371L728,374L718,374L722,379L724,388L705,408L700,409L688,401L671,415L660,415L657,411L639,413L626,399L615,401L607,422L602,426L592,424L594,408L582,392L583,386L578,382L574,366L567,364L573,356L571,349L577,343L575,337L583,328L583,323L585,320L598,320L597,256L611,256L610,226L698,225L701,221L702,225L778,222L785,235L785,250L790,270L808,281L792,296L786,296L785,308L779,326L781,339L777,362L770,364L763,376L761,391L755,391L752,394L749,412Z"},{i2:"ZA",n:"Afrique du Sud",d:"M673,889L700,892L708,923L707,940L706,945L699,942L696,943L689,956L696,963L702,965L705,965L706,957L718,958L708,984L694,995L673,1022L633,1054L616,1056L614,1060L605,1060L603,1062L573,1060L563,1065L547,1066L540,1071L524,1065L523,1061L520,1061L520,1065L519,1056L511,1043L517,1038L516,
21641027L491,982L499,974L503,977L505,983L514,986L528,987L539,980L539,926L546,931L551,943L549,956L563,956L576,946L583,934L606,941L616,940L623,926L636,919L640,909L656,896L673,889Z"},{i2:"SO",n:"Somalie",d:"M862,581L854,568L854,511L869,491L880,489L891,480L911,478L953,430L966,407L964,379L980,374L989,366L996,368L995,390L997,388L1000,391L994,392L993,406L956,484L928,516L891,545L862,581Z"},{i2:null,n:"Somaliland",d:"M964,379L966,407L953,430L939,430L895,416L886,409L874,392L882,378L899,394L907,393L919,387L930,388L942,381L964,379Z"},{i2:"SL",n:"Sierra Leone",d:"M93,421L87,432L74,445L61,437L61,431L56,430L50,420L56,417L52,418L54,413L51,410L55,410L64,398L81,397L88,408L90,418L87,423L93,421Z"},{i2:"SN",n:"Sénégal",d:"M73,321L76,331L75,340L83,351L82,359L69,360L59,357L58,355L29,352L19,355L7,355L11,352L7,352L9,344L21,344L21,342L31,338L43,344L49,342L32,335L26,338L11,337L9,332L11,330L9,330L5,320L0,318L11,310L22,291L49,292L54,299L60,301L62,308L73,321Z"},{i2:"ST",n:"Sao Tomé-et-Principe",d:"M341,552L336,552L340,550L341,552Z"},{i2:"RW",n:"Rwanda",d:"M684,577L689,578L696,572L698,572L702,580L703,591L689,591L686,598L674,597L677,584L684,577Z"},{i2:"NG",n:"Nigeria",d:"M446,350L452,359L454,370L460,373L459,383L446,392L439,412L435,414L431,424L426,426L417,446L418,449L411,457L407,459L399,449L396,452L392,450L376,465L368,484L363,482L364,487L349,487L346,484L347,487L344,489L341,484L343,489L339,488L333,491L324,485L321,476L324,473L318,472L322,470L317,470L307,459L293,458L297,455L282,458L284,418L288,417L300,397L296,382L299,365L311,348L327,345L339,349L348,359L361,354L374,361L387,362L400,355L413,355L429,359L446,350Z"},{i2:"NE",n:"Niger",d:"M446,350L429,359L413,355L400,355L387,362L374,361L361,354L348,359L339,349L327,345L315,347L307,351L305,359L299,365L298,378L287,367L280,369L280,374L276,368L278,365L277,362L269,363L261,357L261,351L264,352L256,346L250,334L252,327L262,327L267,323L299,322L305,316L310,304L314,265L337,261L362,241L427,203L448,208L458,217L469,211L471,233L482,251L479,257L474,302L458,319L444,340L446,350Z"},{i2:"NA",n:"Namibie",d:"M551,826L609,819L616,823L601,826L592,833L587,826L554,831L554,885L539,885L539,980L528,987L514,986L505,983L503,977L499,974L491,982L475,964L470,949L467,930L462,918L461,892L420,826L419,815L431,815L439,811L453,817L516,817L525,823L551,826Z"},{i2:"MZ",n:"Mozambique",d:"M700,892L717,876L719,867L727,857L723,841L728,833L729,808L704,797L692,797L690,782L734,767L740,776L751,774L753,785L748,796L759,810L759,814L762,814L761,806L764,800L770,799L773,781L764,766L755,758L752,740L756,732L776,729L781,733L791,731L797,733L805,727L813,729L826,725L843,715L845,718L842,728L843,748L841,753L843,753L842,777L844,775L845,779L840,791L829,805L817,813L794,822L785,828L777,839L769,843L755,855L751,853L751,864L757,882L757,893L760,889L760,891L758,918L750,926L718,940L715,946L718,950L720,947L718,958L707,958L708,923L700,892Z"},{i2:"MA",n:"Maroc",d:"M256,24L261,30L259,51L264,64L261,69L240,68L238,71L227,73L227,84L209,90L201,97L187,98L184,102L178,100L156,112L149,136L135,139L123,135L114,137L114,141L108,148L103,150L94,167L72,183L63,203L54,215L24,214L46,178L61,166L73,143L85,136L97,119L117,115L138,100L147,90L149,70L160,54L172,45L194,36L212,10L221,9L220,14L227,20L242,21L248,19L249,23L256,24Z"},{i2:"EH",n:"Sahara occidental",d:"M149,136L152,128L148,153L103,149L96,188L79,197L77,220L24,215L21,223L24,214L54,215L63,203L72,183L94,167L103,150L108,148L114,141L114,137L123,135L135,139L149,136Z"},{i2:"MR",n:"Mauritanie",d:"M73,321L62,308L60,301L54,299L45,291L22,291L16,302L28,265L28,252L25,246L28,244L26,245L31,233L24,219L21,223L24,215L77,220L79,197L96,188L103,149L148,153L151,134L197,172L173,170L170,291L170,299L173,304L170,315L118,313L116,310L114,313L97,313L93,317L86,309L78,320L73,321Z"},{i2:"ML",n:"Mali",d:"M80,362L83,351L75,340L76,331L73,321L78,320L86,309L93,317L97,313L114,313L116,310L118,313L170,315L173,304L170,299L170,291L173,170L197,172L272,235L272,239L280,246L299,254L298,266L314,265L310,304L305,316L299,322L267,323L262,327L251,328L239,325L219,333L217,338L210,337L204,345L200,345L199,351L196,352L190,348L184,353L185,358L181,359L182,364L169,372L164,393L156,397L153,395L153,388L151,391L148,389L147,394L143,394L142,397L135,392L128,396L124,391L124,383L119,383L123,377L118,372L114,360L111,360L111,363L105,366L98,363L91,368L88,363L83,3
216465L80,362Z"},{i2:"MW",n:"Malawi",d:"M734,767L731,768L727,761L731,756L732,747L740,742L736,739L737,721L743,715L733,698L747,702L748,700L756,708L757,723L761,731L756,732L752,740L755,758L764,766L773,781L770,799L764,800L761,806L762,814L759,814L759,810L748,796L753,787L753,776L750,774L740,776L734,767Z"},{i2:"MG",n:"Madagascar",d:"M968,741L979,764L981,796L977,801L974,793L970,794L971,809L964,820L961,837L918,934L911,939L888,944L874,935L871,925L873,913L869,896L874,880L878,878L889,859L887,821L894,810L895,803L920,796L923,799L925,793L932,789L934,792L939,782L940,786L945,780L947,781L945,776L949,770L948,766L950,764L953,766L961,759L962,746L968,741Z"},{i2:"LY",n:"Libye",d:"M396,105L409,95L409,85L411,82L428,72L429,61L438,66L452,65L476,73L483,87L511,95L528,105L536,101L541,95L540,78L554,68L568,66L580,70L583,76L605,80L608,84L604,89L606,98L603,105L607,120L611,256L597,256L597,263L483,205L458,217L448,208L427,203L421,191L406,188L394,163L401,153L402,120L396,105Z"},{i2:"LR",n:"Liberia",d:"M74,445L87,432L93,421L102,421L106,434L104,438L112,441L117,434L121,444L116,452L132,463L130,486L107,475L74,445Z"},{i2:"LS",n:"Lesotho",d:"M663,1002L653,1005L648,1012L644,1012L636,997L645,987L658,982L668,993L663,1002Z"},{i2:"KE",n:"Kenya",d:"M749,571L749,553L762,537L765,529L756,500L749,492L768,472L775,474L776,482L780,488L793,488L811,500L831,502L837,496L850,489L856,494L867,494L853,512L854,568L862,581L853,586L849,594L843,596L841,605L830,626L827,626L807,611L804,609L804,602L749,571Z"},{i2:"GW",n:"Guinée-Bissau",d:"M7,356L29,352L49,353L50,356L46,360L48,368L34,371L28,380L28,376L26,378L23,372L29,369L23,367L29,363L17,366L17,363L12,361L13,358L7,356Z"},{i2:"GN",n:"Guinée",d:"M100,420L87,423L90,418L88,408L82,397L64,398L55,410L51,410L46,403L46,396L36,391L32,380L28,381L34,371L48,368L46,361L49,359L49,353L68,360L82,359L80,362L83,365L88,363L91,368L98,363L105,366L111,363L111,360L115,361L118,372L123,377L119,383L124,383L124,391L128,394L125,406L129,408L130,413L127,417L131,423L123,422L122,425L126,428L122,436L116,434L112,441L109,441L104,438L104,423L100,420Z"},{i2:"GH",n:"Ghana",d:"M244,385L243,392L250,398L247,410L251,412L248,421L253,427L250,450L259,462L255,466L245,467L211,482L195,476L200,475L201,471L197,467L194,450L206,429L203,416L203,386L235,388L244,385Z"},{i2:"GM",n:"Gambie",d:"M11,337L26,338L32,335L49,342L43,344L31,338L21,342L21,344L8,345L10,338L13,342L27,340L14,341L11,337Z"},{i2:"GA",n:"Gabon",d:"M439,524L438,537L452,536L456,543L449,551L447,559L457,565L455,585L449,594L445,588L441,592L434,591L428,584L426,591L413,591L412,599L418,606L418,611L412,609L406,615L385,593L390,595L384,592L375,576L379,581L382,580L375,576L370,565L373,566L379,561L380,551L386,555L389,553L379,548L384,547L383,540L409,541L410,521L439,524Z"},{i2:"ET",n:"Ãthiopie",d:"M768,472L759,454L747,442L734,436L737,428L749,425L751,396L755,391L761,391L763,376L770,364L777,362L781,339L792,336L797,340L801,329L809,335L818,332L820,334L834,334L844,339L868,364L860,376L861,386L877,386L874,392L877,398L895,416L939,430L953,430L911,478L891,480L881,488L867,494L856,494L850,489L837,496L831,502L811,500L793,488L780,488L776,482L775,474L768,472Z"},{i2:"ER",n:"Ãrythrée",d:"M781,339L779,326L785,308L786,296L792,296L808,281L820,312L828,324L829,319L834,326L848,331L868,352L879,359L873,365L868,364L844,339L834,334L817,332L809,335L801,329L797,340L792,336L781,339Z"},{i2:"GQ",n:"Guinée équatoriale",d:"M370,499L366,505L369,507L374,500L370,499ZM409,523L386,521L386,527L380,539L388,541L409,541L409,523Z"},{i2:"EG",n:"Ãgypte",d:"M778,222L702,225L701,221L698,225L610,226L607,120L603,105L606,98L604,89L608,84L636,88L661,95L687,83L697,83L701,86L697,84L696,87L701,90L702,87L707,90L728,85L740,112L734,138L719,126L708,106L706,111L715,127L724,136L732,154L751,186L760,194L757,196L760,209L778,222Z"},{i2:"DJ",n:"Djibouti",d:"M882,378L877,386L861,386L860,376L869,363L873,365L879,359L883,369L871,377L882,378Z"},{i2:"CI",n:"Côte d'Ivoire",d:"M128,396L135,392L142,397L143,394L147,394L148,389L151,391L153,388L155,396L163,393L176,405L197,402L204,409L206,429L202,433L194,452L197,467L200,469L200,475L194,472L192,476L181,473L163,474L167,475L154,477L130,486L132,463L116,452L121,445L118,436L122,436L126,428L123,422L131,423L127,417L130,413L129,408L125,406L128,396Z"},{i2:"CD",n:"République démocratique du Congo",d:"M700,680L673,684L672,689L665,695L668,704L668,717L664,729L666,734L674,742L680,743L681,740L685,739L684,759L681,756L674,758L664,745L651,740L646,730L641,736L629,735L619,731L618,725L605,728L605,724L599,720L574,725L574,711L567,699L566,666L549,666L549,660L538,661L533,664L530,676L504,678L495,666L490,649L486,645L435,644L427,647L423,643L427,642L426,633L432,628L437,626L441,629L445,623L455,621L456,629L460,630L479,613L483,589L493,575L506,565L511,526L519,507L518,492L526,483L535,479L548,489L576,494L583,485L616,481L623,476L642,480L646,478L663,490L685,487L703,504L701,519L709,523L689,544L684,577L678,582L6
216477,589L673,593L678,602L683,651L693,662L700,680Z"},{i2:"CG",n:"République du Congo",d:"M406,615L412,609L418,611L418,606L412,599L413,591L426,591L428,584L434,591L441,592L445,588L449,594L455,585L457,565L447,559L449,551L456,543L452,536L438,537L439,524L458,523L480,531L489,503L501,501L512,504L517,502L519,507L511,526L506,565L493,575L483,589L482,608L478,616L460,630L456,629L455,621L445,623L441,629L431,623L420,632L406,615Z"},{i2:"KM",n:"Comores",d:"M886,737L882,735L884,729L885,730L886,737Z"},{i2:"TD",n:"Tchad",d:"M597,263L598,320L585,320L583,323L583,328L575,337L577,343L571,349L573,356L567,364L574,366L578,382L583,386L582,392L577,391L566,396L565,401L545,419L524,422L526,426L518,435L505,436L492,443L488,438L479,443L472,443L473,439L467,427L450,410L454,406L475,406L467,396L467,378L464,368L458,360L452,359L446,350L444,340L458,319L474,302L479,257L482,251L471,233L469,211L483,205L597,263Z"},{i2:"CF",n:"République centrafricaine",d:"M602,426L604,431L612,434L617,439L619,444L635,456L637,465L647,470L651,479L623,476L616,481L583,485L576,494L548,489L543,484L532,479L519,491L519,504L502,501L489,503L482,522L481,512L467,499L466,492L461,487L459,468L456,464L461,462L472,443L479,443L488,438L492,443L505,436L518,435L526,426L523,423L549,416L570,393L582,392L594,408L592,424L602,426Z"},{i2:"CM",n:"Cameroun",d:"M368,487L375,466L387,454L399,449L409,459L418,449L417,446L424,431L432,423L446,392L459,383L460,373L454,370L452,359L458,360L467,378L467,396L475,406L454,406L450,410L467,427L473,440L456,465L459,468L460,486L466,492L466,497L481,512L482,530L458,523L389,523L386,521L388,507L383,499L386,498L385,495L381,497L375,494L374,487L370,485L368,487Z"},{i2:"BI",n:"Burundi",d:"M698,592L697,599L702,601L702,605L689,621L681,623L676,595L686,598L689,591L698,592Z"},{i2:"BF",n:"Burkina Faso",d:"M258,387L240,384L235,388L203,386L203,410L197,402L176,405L164,393L169,372L182,364L181,359L185,358L184,353L187,350L199,351L200,345L204,345L210,337L217,338L219,333L239,325L251,328L250,334L254,342L264,352L261,351L261,356L269,363L276,362L278,364L276,367L280,374L279,377L274,381L266,381L258,387Z"},{i2:"BW",n:"Botswana",d:"M616,823L629,849L643,858L644,863L650,864L650,872L654,879L669,883L669,886L673,889L656,896L640,909L636,919L623,926L616,940L600,940L584,934L576,946L563,956L550,956L551,943L546,931L539,926L539,885L554,885L554,831L587,826L592,833L601,826L616,823Z"},{i2:"BJ",n:"Bénin",d:"M266,460L268,459L265,449L267,417L263,403L256,397L256,392L266,381L274,381L280,375L280,369L287,367L298,378L296,382L301,394L288,417L284,418L282,458L266,460Z"},{i2:"AO",n:"Angola",d:"M435,626L431,623L420,632L423,643L427,642L426,633L435,626ZM598,720L573,723L574,711L567,699L566,666L549,666L549,660L538,661L533,664L530,676L504,678L495,666L490,649L486,645L437,644L424,648L441,682L440,687L435,692L448,723L445,741L430,758L423,789L419,794L419,815L431,815L439,811L453,817L516,817L525,823L551,826L589,821L571,805L570,800L569,752L598,751L598,720Z"},{i2:"DZ",n:"Algérie",d:"M396,5L391,11L391,30L388,37L378,46L378,50L387,69L395,76L399,103L396,105L402,120L401,156L394,163L404,187L421,191L427,203L362,241L337,261L300,267L298,265L300,261L299,254L280,246L272,239L272,235L151,134L155,113L178,100L184,102L187,98L201,97L209,90L227,84L227,73L238,71L240,68L261,69L264,64L259,51L261,30L256,24L264,24L281,15L286,16L304,7L336,3L348,4L354,8L370,2L375,5L379,2L387,6L396,5Z"}]},{key:"oceania",viewBox:"0 0 1000 677",fr:"Océanie",en:"Oceania",countries:[{i2:"VU",n:"Vanuatu",d:"M802,147L801,160L802,164L807,164L808,153L804,156L802,147ZM809,169L807,172L811,181L816,181L809,169ZM822,199L819,201L824,204L826,202L822,199ZM833,225L832,219L830,219L829,223L833,225Z"},{i2:"SB",n:"Ãles Salomon",d:"M665,12L659,5L650,0L660,12L665,12ZM703,32L686,19L682,17L704,36L703,32ZM667,23L661,28L667,28L670,34L667,23ZM717,33L719,47L727,55L722,38L717,33ZM699,48L702,56L718,58L711,50L699,48ZM737,70L724,66L728,71L741,77L737,70Z"},{i2:"PG",n:"Papouasie-Nouvelle-Guinée",d:"M552,39L550,43L558,44L556,40L552,39ZM564,49L560,49L556,45L559,51L563,53L564,49Z"},{i2:"NZ",n:"Nouvelle-Zélande",d:"M834,496L834,488L830,487L833,505L837,504L834,507L838,522L838,514L843,521L841,527L839,524L841,532L845,536L841,535L842,548L833,562L821,568L833,585L831,593L821,602L824,602L827,609L837,605L853,592L860,577L866,577L870,581L886,558L880,554L869,559L857,549L855,528L852,540L844,532L848,523L845,514L847,514L847,505L834,496ZM805,598L802,587L805,585L796,587L771,617L772,614L746,628L737,629L728,637L719,640L71
21647,647L714,645L712,647L714,652L707,653L708,656L712,655L709,659L718,660L725,669L735,672L755,664L767,639L780,636L779,633L790,638L791,635L786,630L788,628L796,625L815,608L814,603L819,598L815,600L814,600L819,597L815,596L815,597L811,599L816,594L805,598ZM718,669L717,672L713,677L722,675L718,669Z"},{i2:"NC",n:"Nouvelle-Calédonie",d:"M800,255L799,248L796,248L796,254L800,255ZM752,232L763,252L783,272L791,274L791,270L768,245L752,232Z"},{i2:"FJ",n:"Fidji",d:"M1000,213L978,215L976,218L978,222L986,219L989,222L997,222L998,219L992,219L1000,213ZM970,226L959,227L955,235L963,240L974,240L975,232L970,226Z"},{i2:"AU",n:"Australie",d:"M228,78L230,85L238,89L246,80L242,77L234,81L228,78ZM228,82L224,83L224,89L232,88L228,82ZM330,111L325,120L334,121L331,117L334,112L330,111ZM379,155L373,154L371,159L379,155ZM428,77L427,66L421,59L417,63L414,81L409,86L413,92L408,96L406,110L409,130L404,153L397,169L385,174L373,168L369,161L357,159L312,132L319,116L318,105L326,104L333,87L325,83L323,91L320,91L318,87L314,88L317,81L303,88L253,76L251,78L265,82L266,90L261,93L246,94L243,91L237,99L233,98L233,101L226,107L228,112L222,118L216,132L224,138L220,139L221,143L215,140L214,144L211,140L204,139L197,149L197,139L185,129L176,125L172,133L163,131L163,139L158,141L157,136L151,145L154,151L149,150L146,153L150,157L144,155L141,159L140,164L143,167L145,165L142,172L147,173L129,173L128,178L135,184L134,187L131,186L131,194L120,178L111,191L110,198L114,207L107,214L97,235L78,246L70,246L47,263L37,264L12,290L6,302L2,293L0,306L4,319L3,337L19,357L21,364L18,366L15,361L14,363L8,356L17,369L13,371L8,364L6,366L23,382L27,394L41,409L50,431L63,447L69,472L67,480L62,479L65,491L88,498L102,496L123,479L126,472L146,465L156,466L174,462L181,445L201,430L220,427L241,415L270,408L286,414L306,416L314,421L314,428L323,433L334,452L331,451L330,453L337,458L342,458L340,453L346,442L357,435L363,418L366,434L361,444L360,456L355,456L354,462L365,459L369,443L375,457L372,467L386,462L386,466L382,466L393,478L394,492L403,502L416,509L430,509L444,516L461,501L464,504L459,508L462,511L468,507L467,511L480,521L481,516L478,515L486,514L500,502L520,500L526,496L531,469L540,456L548,433L565,416L573,400L585,355L580,331L582,311L564,280L550,268L548,251L546,253L539,247L537,253L533,251L530,237L519,220L522,219L520,215L504,207L500,200L484,193L483,186L478,182L480,172L477,160L469,151L467,128L454,116L446,120L443,118L437,90L432,85L433,79L428,77ZM585,296L584,291L580,308L582,303L585,296ZM364,467L351,470L350,472L363,475L371,471L364,467ZM452,534L451,529L449,528L448,537L452,534ZM498,534L501,540L504,539L500,532L498,534ZM458,551L469,573L468,575L465,571L468,582L477,589L475,592L485,594L490,580L492,584L493,581L496,583L496,587L498,586L498,577L502,567L503,571L502,549L479,554L459,546L458,551Z"}]}],t3={AD:"europe",AE:"asia",AF:"asia",AL:"europe",AM:"asia",AO:"africa",AR:"southam",AT:"europe",AU:"oceania",AZ:"asia",BA:"europe",BD:"asia",BE:"europe",BF:"africa",BG:"europe",BH:"asia",BI:"africa",BJ:"africa",BN:"asia",BO:"southam",BR:"southam",BS:"northam",BT:"asia",BW:"africa",BY:"europe",BZ:"northam",CA:"northam",CD:"africa",CF:"africa",CG:"africa",CH:"europe",CI:"africa",CL:"southam",CM:"africa",CN:"asia",CO:"southam",CR:"northam",CU:"northam",CY:"asia",CZ:"europe",DE:"europe",DJ:"africa",DK:"europe",DO:"northam",DZ:"africa",EC:"southam",EE:"europe",EG:"africa",EH:"africa",ER:"africa",ES:"europe",ET:"africa",EU:"europe",FI:"europe",FJ:"oceania",FK:"southam",FR:"europe",GA:"africa",GB:"europe",GE:"asia",GH:"africa",GL:"northam",GM:"africa",GN:"africa",GQ:"africa",GR:"europe",GT:"northam",GW:"africa",GY:"southam",HN:"northam",HR:"europe",HT:"northam",HU:"europe",ID:"asia",IE:"europe",IL:"asia",IN:"asia",IQ:"asia",IR:"asia",IS:"europe",IT:"europe",JM:"northam",JO:"asia",JP:"asia",KE:"africa",KG:"asia",KH:"asia",KM:"africa",KP:"asia",KR:"asia",KW:"asia",KZ:"asia",LA:"asia",LB:"asia",LI:"europe",LK:"asia",LR:"africa",LS:"africa",LT:"europe",LU:"europe",LV:"europe",LY:"africa",MA:"africa",MC:"europe",MD:"europe",ME:"europe",MG:"africa",MK:"europe",ML:"africa",MM:"asia",MN:"asia",MR:"africa",MT:"europe",MW:"africa",MX:"northam",MY:"asia",MZ:"africa",NA:"africa",NC:"oceania",NE:"africa",NG:"africa",NI:"northam",NL:"europe",NO:"europe",NP:"asia",NZ:"oceania",OM:"asia",PA:"northam",PE:"southam",PG:"oceania",PH:"asia",PK:"asia",PL:"europe",PR:"northam",PS:"asia",PT:"europe",PY:"southam",QA:"asia",RO:"europe",RS:"europe",RU:"europe",RW:"africa",SA:"asia",SB:"oceania",SD:"africa",SE:"europe",SI:"europe",SK:"europe",SL:"africa",SM:"europe",SN:"africa",SO:"africa",SR:"southam",SS:"africa",ST:"africa",SV:"northam",SY:"asia",SZ:"africa",TD:"africa",TG:"africa",TH:"asia",TJ:"asia",TL:"asia",TM:"asia",TN:"africa",TR:"asia",TT:"northam",TW:"asia",TZ:"africa",UA:"europe",UG:"africa",US:"northam",UY:"southam",UZ:"asia",VE:"southam",VN:"asia",VU:"oceania",XK:"europe",YE:"asia",ZA:"africa",ZM:"africa",ZW:"africa"};function n3(t){return t&&t3[t.toUpperCase()]||null}function r3(t){return Object.assign(t,{continent:n3(t.cc)})}function i3(t){const n=new Set,r=[];for(const i of t){const s=(i.name||"").toLowerCase();!s||n.has(s)||(n.add(s),r.push(i))}return r}function s3(t,n){const r=m.useMemo(()=>t?{mode:"anon"}:ha(),[t]),i=!t&&r.mode==="client"&&!!r.token,[s,a]=m.useState([]),[o,c]=m.useState(""),[l,d]=m.useState(!0),[p,u]=m.useState(!1),[g,f]=m.useState(0),L=m.useRef(0);return m.useEffect(()=>{const v=++L.current;let y=!0;return d(!0),(async()=>{try{let h=[];if(i&&r.token){const[b,x]=await Promise.all([Op(r.token),gr()]);b&&(c(b.fund||""),h=b.targets);const A=((x==null?void 0:x.recent_ops)||[]).map(w=>fd(w,n)).filter(w=>!!w);h=[...h,...A]}else{const[b,x,A]=await Promise.all([Fp(),_p(),gr()]),w=(x||[]).map(j=>Ox(j,n)).filter(j=>!!j),S=await Px(w,n),E=((A==null?void 0:A.recent_ops)||[]).map(j=>fd(j,n)).filter(j=>!!j);h=i3([...b,...S,...E])}if(!y||v!==L.current)return;a(h.map(r3)),u(!1)}catch{y&&v===L.current&&u(!0)}finally{y&&v===L.current&&d(!1)}})(),()=>{y=!1}},[i,r.token,n,g]),{session:r,connected:i,fund:o,dossiers:s,loading:l,error:p,refresh:()=>f(v=>v+1)}}const $x={retenu:"#12A150",ana:"#1e40af",pending:"#e67e22",valide:"#6d28d9",ecarte:"#E5484D",fav:"#eab308"},Xx=t=>(t||"").trim().toUpperCase(),a3=t=>(t||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().trim();function Bn(t){const n=Xx(t.verdict),r=a3(t.ceoStatus);return r.startsWith("valide")?"valide":r.startsWith("ecarte")?"ecarte":n.includes("CALL")?"pending":r.startsWith("retenu")?t.memoUrl?"ana":"retenu":n.includes("NO MATCH")||n==="PASS"?"ecarte":r.includes("trancher")?"pending":!t.memoUrl?"retenu":(n==="CONSIDER"||n==="MONITOR"||r.startsWith("analys"),"ana")}function e1(t){const n=Xx(t.verdict);if(n.includes("CALL")){const r=Bn(t);return r==="valide"?"CALL YES":r==="ecarte"?"CALL NO":"CALL PENDING"}return n||"â"}function t1(t,n){return(n==="fr"?{retenu:"Retenues",ana:"Analysées",pending:"à trancher",valide:"Validées",ecarte:"Ãcartées",fav:"â
Favoris"}:{retenu:"Kept",ana:"Analysed",pending:"To decide",valide:"Validated",ecarte:"Ruled out",fav:"â
Favorites"})[t]||t}const o3=new Set(["CALL","CALL PENDING","CALL YES","CALL NO","CONSIDER","MONITOR","PASS","MATCH","NO MATCH","LEAD","NEW"]);function l3(t,n){const r=e1(t);return o3.has(r)?r:t1(Bn(t),n)}const c3=7,Bo=[{max:0,c:"#0F172A",px:7,fr:"AUJOURD'HUI",en:"TODAY"},{max:7,c:"#475C6E",px:6.2,fr:"⤠7 J",en:"⤠7 D"}
2164,{max:30,c:"#8798A8",px:5.4,fr:"⤠30 J",en:"⤠30 D"},{max:1e9,c:"#B9C6D2",px:4.8,fr:"PLUS ANCIEN",en:"OLDER"}];function br(t){if(!t)return 9999;const n=Date.parse(t);return Number.isNaN(n)?9999:Math.max(0,Math.floor((Date.now()-n)/864e5))}function vd(t){const n=br(t.date);return Bo.findIndex(r=>n<=r.max)}function Rt(t){const n=t.hot;return!n||typeof n.left=="number"&&n.left<0?null:n}function Yh(t,n){return(n==="fr"?t.fr:t.en)||t.fr||""}function d3(t){const n=typeof t.left=="number"?t.left:0;return Math.max(0,Math.min(c3,n))}function p3(t){return(typeof t.left=="number"?t.left:0)<=1}const u3=["janv.","févr.","mars","avril","mai","juin","juil.","août","sept.","oct.","nov.","déc."],h3=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function n1(t,n){const r=Date.parse(t.date||"");if(Number.isNaN(r))return t.date||"";const i=new Date(r);return n==="fr"?`${i.getDate()} ${u3[i.getMonth()]}`:`${h3[i.getMonth()]} ${i.getDate()}`}function r1(t,n){const r=Math.max(0,typeof t.left=="number"?t.left:0);return n==="fr"?r<=0?"dernier jour":r===1?"encore 1 j":`encore ${r} j`:r<=0?"last day":r===1?"1 day left":`${r} days left`}const Lt=t=>{const n=(t.verdict||"").trim().toUpperCase(),r=(t.ceoStatus||"").trim();return!!n&&n!=="NEW"||!!r||!!t.memoUrl};function Yt(t){if(!Lt(t))return"todo";const n=Bn(t);return n==="ecarte"?"ecarte":n==="pending"?"pending":"retenu"}const i1=()=>({win:"all",status:"all",signalOnly:!1,signalEngines:[],sector:[],country:[],engine:[],stage:[]}),m3=(t="europe")=>({continent:t,filters:i1(),sort:{key:"signal",dir:-1},groupBy:"engine",shown:{},pileMode:!1,openFacet:null,popupId:null,modal:null,chain:{queue:[],idx:0},spaceTab:"retenu"});function g3(t,n){switch(n.type){case"continent":return{...t,continent:n.key,filters:{...t.filters,country:[]},shown:{},popupId:null,openFacet:null};case"filters":return{...t,filters:{...t.filters,...n.patch},shown:{}};case"toggleFacet":{const r=t.filters[n.facet],i=r.includes(n.value)?r.filter(s=>s!==n.value):[...r,n.value];return{...t,filters:{...t.filters,[n.facet]:i},shown:{}}}case"clearFacet":return{...t,filters:{...t.filters,[n.facet]:[]},shown:{}};case"reset":return{...t,filters:i1(),shown:{},openFacet:null};case"sort":return{...t,sort:t.sort.key===n.key?{key:n.key,dir:t.sort.dir*-1}:{key:n.key,dir:n.key==="signal"||n.key==="amount"?-1:1}};case"groupBy":return{...t,groupBy:n.groupBy};case"more":return{...t,shown:{...t.shown,[n.group]:(t.shown[n.group]||po)+n.by}};case"pile":return{...t,pileMode:n.on,popupId:null};case"openFacet":return{...t,openFacet:t.openFacet===n.facet?null:n.facet};case"popup":return{...t,popupId:n.id};case"modal":return{...t,modal:n.modal,popupId:n.modal?null:t.popupId};case"chainStart":return{...t,modal:"chain",chain:{queue:n.queue,idx:0},popupId:null};case"chainNext":return{...t,chain:{...t.chain,idx:t.chain.idx+1}};case"spaceTab":return{...t,spaceTab:n.tab};default:return t}}const po=60;function Rp(t,n,r,i){if(i!=="signal"&&n.signalOnly&&(!Rt(t)||n.signalEngines.length&&!n.signalEngines.includes(t.engine||""))||i!=="sector"&&n.sector.length&&!n.sector.includes(t.sector||"")||i!=="engine"&&n.engine.length&&!n.engine.includes(t.engine||"")||i!=="stage"&&n.stage.length&&!n.stage.includes(t.stage||""))return!1;if(i!=="win"&&n.win!=="all"){const s=n.win==="1"?0:n.win==="7"?7:30;if(br(t.date)>s)return!1}return!(i!=="status"&&r&&n.status!=="all"&&Yt(t)!==n.status)}function f3(t,n,r){return t.continent!==n.continent||n.filters.country.length&&!n.filters.country.includes(t.cc||"")?!1:Rp(t,n.filters,r)}function Pp(t,n){const r=n.key,i=s=>{switch(r){case"name":return(s.name||"").toLowerCase();case"country":return s.countryLabel||s.cc||"";case"stage":return s.stage||"";case"amount":return s.amountEur||-1;case"age":return-br(s.date);case"signal":{const a=Rt(s);return a?100-(a.left??0):-1}}};return[...t].sort((s,a)=>{const o=i(s),c=i(a);return o<c?-n.dir:o>c?n.dir:(s.name||"").localeCompare(a.name||"")})}const x3={AE:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAZUlEQVRYhe3VsQ3AIAxEURylD5OkZjC6bJeKrcgMNrJOKP/1SPflglIAQMlGvafnQetX1paQQz1gFQFqBKgRoHZ6H8znzdgRtv0FCFAjQI0ANfc/YGYZO8K2vwABagSoEQAA//YBpacFM8B670sAAAAASUVORK5CYII=",AR:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABX0lEQVRYhe2WzU7CQBRGzxRK24BaA0YiCxECxlfwufSt9Dl07RLSAIkLRH5qA/ZPOm7dM3VCMucB7ndPcu/cAYPhIMTD00TqbuIQLN0NHIoR0I0R0I0R0I0R0I2QUpZ2iYs8AQSW7ZQVQbWMosnmnXg9Iw4nyCzFaw5otIfUTtvKs5QLZNGccPpKvhmRbT+Bgjyake0W+L173LMrpXnKBbYfY5LFG+vpCydWAHuIRJ+W7RIvO8oFlC5xkSfEyxFFvKEhAzxrhWuvqBOQ71YkYYD8SVVGqhUQQmDVXKg4IMCpS9y6hAKQOUWWovrNUDpCourg+j3ycMoXfUQICMG36OE7Pl5riGW7KiPV74DXuiaNbvG7KfvkDiEqNBsX2OdDGpcD1XHl3IEsmrOdj4hXY0TNwfNv8JpdXL+jOqrsQ5YCUvnY/KX6+Dwtrfh/cPR/ISOgGyOgGyOgGyNgMBw5v1zaeuHpaSq0AAAAAElFTkSuQmCC",AT:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAY0lEQVRYhe3YsQ2AMAwF0RghdmEEWhrWoWfmVBnAGcLFCeXeBP8qR2lNrOjnlfSIio0eUGUAzQCaATQDaPvx3PSGkshMnxIkA2gG0AygGUCL8X6/vsT+StAMoBlAM4BmgFY3AZnxDENxfMTcAAAAAElFTkSuQmCC",AU:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAD10lEQVRYhe2Xe0xbdRTHP/daBpXe1hYKg0kJ+ADd2CRBDaiDkSFmFMOSwbZsgcHEDYX4jC5mEITEmBiJc2Odzz1kGRmLERoXcMgm/6gZzgHZlDhntqDJRnzQlo1HS/2DMCF9XRrKMOnnr5t7z/n9vueec3/nHggSJEiQ24kwlF3mlGoqEB9LpdncQ92ek/x6dcjFcKylkutpRQBE9RwntHCfi01cjJZaYwr5fefg+p9INRUoSz8NaADiSaORkSYzw2u3UyRNcuFUNfvrN2OI1clexBCr41BVDj8+qCC/ox1p+3rU7R9
2164wcPBmAKVPIW7be4rUi3Za84zYmtux5DxDabSCX868yeF3S7jHoPfoHBej5aOKbH5IvoN1ra2Eb3wKTecnHLeKLM+p57nqY7KFCIKAXqdCr1MhCMIc/BIqnDMF1RSkUjDQj/PSFaTdOxCzHqHZ3MMmgzSrhI50XXRr56kEfaGRlHQcqQIgt3gvw1Z52RPGey44fZvBxM+X+XvrLgC0TW8TkpwoawN334o77k+I4uA7xQCUvfYZA5evyfITBlkuKwB/iUtYLdvWEKtDEODK73/J9lH4IypQXP1DvvBpFk0JefRfomDVA3fT+9MgY+N2l+eKmRvExWh5pXwtz25+HPFsP5b6A6BW0Z2ZSX76fbfsQpITMfVfc2v3+olzPj9iUZw6ZSYnfb+7huoNbDKmse3Vw5i/7ndda1r4ezWFDHTVsvNeDbann8eyp4nu/DzShyQ2NHS4OL5Y10JSdi0HLg2jamtE/cJWVpu/5Fu9lRMv53o8fu9SK6kszqKqJAut5k6v4pVhIVisowxbb2K7MebWRjA1dTvLitLh+76pNympaH80g92t52fVpLdObIjVsasiF3frFJu6Zm2YlBjN6WMvIYoCmRsbfJ42kVoVdoeDkRvjTNgdrgGMnjnrtNaZEJZG8k16hscSkPsrMV2Cwne9WOtMRP0W6mK3c8sTCAiYjnZ7FS+HWY1ssZAQF0FpYQYNH3fyj8V7QxMXSNOcsNhGUShEn+JhjhnQSEoA2W1+IZCVAbUqDIC8NSvIW7MC+C+Y242sDBQ8uYrKkiyk8DAEAWwjY7x/6DRffNW7EBq9IisDbZ19qFVhPLwynrSUeFThobR19gVamyx8BhAVIdHSWM7K5GW37qUkLaOlsRy9TjVvQuZlHvDG+tyH+PCtLQDseOMon3ec90+pB/ydB2T/jUZFSKwr3ceE3UFaSrx/Kr0QHSnhcEwCsFSvlj/QyM3AkhAF4xN2l+v5JKDzwEzBgRAP/s0Di7ITBwkSJMj/h38Bz0ZuzGmiSNAAAAAASUVORK5CYII=",BE:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAfElEQVRYhe3PIQ7CUBAG4b802AraS/QCGMI5uDEkiNp3gx6gQSCaFEVS+zCDmM+t2N1Mk53z2K3PsrSpNE/XDKdj1c62bHnd3rWvkuTel8flOxx+ufBPDKAZQDOAZgDNAJoBNANoBtAMoBlAM4BmAM0AmgE0A2gG0AygfQC07g5IprZIiAAAAABJRU5ErkJggg==",BG:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAfElEQVRYhe3XMQ2AQBBEUY6sAkTQUCKCBCGYwQo+CA0lCqggwcIiYoqfS+YpmJ9ss01jJimZudAjFCUzkx6haOkBKgfQHEBzAK36gBi3ld4gifO96Q2S6k/IATQH0BxAi+H56A2ScvWdX0qSA2gOoDmAVn1A7PN00CPMQD9rWBHZFui3fgAAAABJRU5ErkJggg==",BR:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAIAAABAJy5dAAAABmJLR0QA/wD/AP+gvaeTAAAFQElEQVRYhe1XXXATVRQ+m81fl2TbpjQJTdO0TRvSQmmLRZCg4iiO4ogDisOoKMq0jgOKzoAPojjKA47IGypScGBGcRAVkR8FxxlKKSMUpK0lbdOm0DTZps1vk90k3eyPD+mUNKRNaQX6wHm75577nW/PvfvdcxGoXQzTyQT3mkCi3SeUyqYdIeHUIRCAak0/ANQ6VPw9J6THInuM1scVgwCwdtZATVtRG5U2FUAUVmgnt1KI8FvyicNlFgMWiXnypHRNbv8MlDvvx1kemRwsMjkdqpRTtSVd83Eq6WwrhdWY9X8Pyu8GIQzlPiro3awjUIQHgAgtbLSoe104AOQpAwsMfRIRCwA8QK1DtcWSH2TRO0ho+Uzfl8ZunXQIAHpd8k+/Nx0+ayQj4pEAmZRes7R92ysNuTODAEAMid/uKDw6oPj/CSnF0Z2GG2vVrtjw1KXClz5bEQiJkwbLpPTBLSdXmjpjwxPuzLfa9Y5I8uAEm9ChXq30nKxseyg9GBsebShetX1VhB7zD6UZ9KfzxvJCl1HrBQADFnkjZ8AXFf4TlKXMlaJChWmRr0u6lyn8I55el3xO9XpyAp8rT6PNtfs0M8kRzzk//qZZ3xEaTxfGJCRE+A1a53a9TYay8f6dZ7d56fkYjgLPMzQEvdFeG9Vidnb2uG8FqX66+ZtNp+M9YVbweY9mx/VcegxdSE6oXEbtLbUuwMkE/xAjOer8iwgMhgIcC5xYhBRlqzlFyFRQcsXe3dTUTxHCXXvreX5YsWVSeuDH3VIxk4DTQmI15qJLgSQ7mEgoDeXe1zk+KLCLkCTXQH1r7pNbX1tUoa272B3vV2bJHlmUv3ipal5Fts3p+f0X+8/H2jmOB4Bzuw4tmWO/FYrhkK8c6g+78sjRujDqUD+aGThR0fa80oOOIbMN13KP1BX1OHwJfipMmzsHTv95vaXRi4mkj6zMWr28rNvqd/ZTy+bfmJufZDcFCCxMJ9eoPR2hNGtYOuK/vbsMGV22ypKcq21EvKepnWhqJxSH0jZsKt+6o+rCMR+CHL+tFKMq1BOR7CdUDI+YMoJJi+QnpQfOlOUocUwmpija6R4WgrwcPBOXDpJ0bBiOMOfq7H4H/8LrBcUSswq33ArFcMhu+6wXW2a3UdiYhACA4ZE6X/pxl+IBnNJI6AQUdSZ1wbKK40V2Z6Bqbo6jPwAACIIY81QhmkERQSgSjUXOK1ZdNfd3Nvdtfu6AUBBNwGkhsZXNJfsJFc0nNmTJG7Rmcoapsew9S0HCiZOIWH32mWtWZzTKBMnhNDzP+0IhkUDg9t+8awk3VVmqMc2+IhGG4hHCrOCTbu2DF8uT/mIwCWG0u+VzqtcHw2IAeOphwx/1N7djtk5psbl0qvQZMqlOk3G+scVcuy8n6/aEMcXV4WOE3/Vlm0nsMUUAQzkAwDG6VOc5Um/keaTL5okP9gxSiyvyO2zefDVed9l6eOtvVcXO2JSfEb7bUfBOR6E7KhonXWpCMTNT2ME+pUoSLZeFAMCo9ZYXuk5d0tPM8IaKRCIURTmO63X6WZbNVgj2bPzh2YVdsdkT7sxnmkrP+tJTJpooIQCgWPTXgazGgMyUEcwQskat99UnWqmw2OJQ0AzKcRzHDddv3bJ/92w8FKsNMSReZy7+2JoXZCbaFU21QRuKopctalusQcsOVBmcd7VBG7E718JOssl30uJvCVWIQ5dkBIVx8h3lkS96NC+3Gnoi0nGWj2OTrNCIxT+DGvzyqT+DpkoIpttDEQB4gL0O1dRxYjbt3vb3CaWyaUfoP/bnW7HexCRgAAAAAElFTkSuQmCC",BS:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABTElEQVRYhe2Xy0oCUQBAzx0fjU6k+GiMHhiDlJuMIiIGolKhNtqiVYHbdtHCoA9o2aI/tsVwF4I43nFmrgP3fMDlHO4bDAaDQSeCdmdGfwwNV7dLJAQww8rB2RXcPkLJ0e2kRBAgscvgD+DSB2Hps1JgPkBS34X+CI5P0jdSZHGAxOvCYAzVenpGiiwPAMjl4Pwm2B/FrXSsFAgPkGzvgD+E3jUIkayVAqsHSFoHwbLabycipIp6AMEEvNxX+P1oceQWEtBScCFCgKRsW3y9NfieNLGLepbVWgGSQ7fAz7vL5Kkag5IasQRI7i4c/j736HXsuIYMJdbrVoj0D6h8HIPoXEJrBTgli+mr3k0cKSDbx+iGXWSrz8CGPiXCAzb8Mbc8wOvC8BkqtZR01FkckKEPzXxABr+UQUCGP/V5vFN4GEGtqdvFYDAYMsg/5Rwq7afBW8sAAAAASUVORK5CYII=",CA:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAACkUlEQVRYhe2XS0hUYRiGn3Ocmhk9VmNWq7xEk5exwggCISmoRYsWQUXXhbUoXURSdIEKWrhu1yIoAluE4DLpBoYmM4lglmaMIMYYiqHRdI6jzrm0kIxpEvGc/1SL8yz/8/7f+73zzX8u4OHh4fEvkQYiRdZyNlT2f3KrFwA+VBUvSy+71Mdfw9UAWncUrTvqpgU+N4t/uXsHDIO85lbXPIRPINXXC6aBFu1kuucN0709aNFOMI35a4IRPoHkizbGbl/HnJtdWBtruoW80k9ezW6C26uF+gmfQKCiipn4IHMjwwtrcyPDzMQHCVRWibYTF8DUNAACFZFFNYHySIZWBI4CqB3t6BPjAIxebiD57An+klLkYG62UTAXf0kpyedtjF5qAECfGEftaHfSgrMz8LXlE
2164d9fvcRXsBZ9ahIt1oWs3Me/eQup928ztP5wGWqsi89XL2DpOvHaHehTk+Tv2YdSu9d2D44mkL//AAD61CQAVjpNouEMqYF3WdpUfx+J+jqsdBosa2HPzxp2cTSBYOXWrDXL0P8sNk0szOwakW1OWrA/AVNVSTSed2QOkLh4DlNVbe+3HUBWFEqbW8nbVWPbPLd6JyUPW5AVxXYNR2cgJ1RA0b1mCs/WL3tv6MgJih88xle4zkkLzp/EUo6P9Y3XWLGxmPGmm/OHdAn9his3KDhZ59QaEPggCx0+TujoqaV1x04Lax4Evwtpsdf4w+UEwmX4w2UYyW8gSeSsWs3s0Edmh+LzL3aWBZIkxFNcAMtiU+tTJN+vklqsCyQp46Bb+iK3WZuICyBJGc0DmJqa9Uv/rnGKqx80pqaC7O5Xq6sBDE0T9VdfFFcDrDl4yM3ygMsBZCXfzfIeHh4e/wE/AIStzOFS9ztcAAAAAElFTkSuQmCC",CH:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABFklEQVRYhe2YvQrCMBRGP38QiuCkuDiJCK4OBQeh7yAUR5/B1dnVZ3AURXyFQgehg6sg4tSltFNBCkLRXRI1ErwG7hnzQW4OhJtLCpBw6rXusoyC7jEsiNaLvz6IbliAGhagpqx7w1K9gUq7I8xulzPyJNZaT7tAdeigOV8Is2g2RbrbaK1n/BViAWpYgBrjBZTbaKneQHXoSHOrb3+VAcDV95TfCeGICsjHacseoLVcKxX5lHDiIgv2wozH6X+FBagxXkC5jd4uZ0SzqTS3+jZqo7EwS7crZIfg5d6qKAvkSfx2JJYJZIeAx+lnWIAaFqDGeAHtvxJX30M4cYXZN33+HdoF8iRGpvnv5xXGXyEWoIYFqHkAMJxFZVylOOQAAAAASUVORK5CYII=",CL:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABRElEQVRYhe3WvUrDUBjG8X/aCEqpOqhTVSJFhFrRsQ7aUXBw6CQ46CV4IeJduLgVtE4WHOykOOhQwSV+QDGIEGqQ2hw3l8Q2tjUn1fMb30DyPITzAYpcGrkD0c0LxPlmr7J0JCb16z2gCsjWssBydpzc/FhYWTqit3q4s27gCqhcW2Hl+TFPgZXFCRKDcRpNwcZqCgQcnpoM6DHqToOzq2cZOb/lKXD3YHO0lyczM4Ie1wA42c9TNW3WdsuhB2zHswYeLYel7RKlytPXrHxRI7t1zH3tLdRwQfiuASFgIT2K9fpO0xWkU0lct6vz7tf47kKzk0mqpo1RKGIUilzevjA3PRx2tkB8rxKJIZ2689F2BhG9SvgF9ZtFwd8+iftB3xfQbjJT0dwfA+r7P6AKyKYKyKYKyKYKyKYKyKYKyKYKKP/dJxKlVEJD2rV1AAAAAElFTkSuQmCC",CN:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAB5ElEQVRYhe2XO4vUUBiGn3NymcyMo4LKDO6622gh2ImgxRYWQXYsRBBbsbJaG2t/hP/A0s7Kzs7STrD3CrMgUTLJzmSSnGOxKC57ZqJzO4V5qoR8+Xjf73JIoMYuItq8pG2LWAS5aALRsOt/fgO+Jngc0Xj0fYly/p2ZBmSvQPYK4zMRaNzrI7wbI+R5c8w6mLkDjYc/QEP2/LQ5QIJzOaN831iVvkpmdsDvJ/j9ZHqA4rd471aCfy9GnC2XKrAK988b2Svw7w5BAI7GvTYCINiLoBSgYfKygxoceQ3RVvi7CV6YEoct1rnWx0bI2zmg9WyAPHe0kjpySJ90yV+3jYnkVo7oKNQHD50ufLj9NcYdkN2CzqvPyO7hcqp9l+HtC6h991gC2xhLpTOBPFNCIaA4vNaZqEwmTqilC6zCaMALU9TAYXh/g/jOJuqLixemU5OItsLvJzSffsO5OFmZWBPmYc0FcbhN8bZJ+S4g3t2CfHoHdCpxro7xdg4oP3mr0mpk8W8hAWiQ2zk6kZBK9Lh63JbF3FspAo17M0WeUmQvTqI+rrfyv5jbgJ4ImnsROhPkb1qor3ZOqPk70FQkDzZwroytiYf6f8A+tQHb1AZsUxuwTW3ANrUB29QGbFMbqPnf+QmYZ5Q68JFp2QAAAABJRU5ErkJggg==",CO:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAWUlEQVRYhe3XMQ0AIRAF0V0c0CABDfg8X5fghwREUEzBPAV/qs1GiJVrtk2PuFHoAbcMoBlAM4BmAM0AmgE0A2gZ4/MfIBlAM4BmAC3/2r0DJANoBtAM0OsOu9MG7hU04NAAAAAASUVORK5CYII=",CR:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAByUlEQVRYhe3XT0gUURzA8e8b5o+yBbu0rahk0mHBFspDp05hB4Wg2EOhp27ZoUMd02jDQDBv0cUuRScxRKJ7ByGiUEEisdJYl2q3LduD2rg7Ds9D1xjHhuEhvM95Dt8f7715M6BpkQhy966pjojCBDmhOiIKQ3VAVHoA1cTE1JxUHRGFkFIe6AEO/BbSA6gmls/l930GDMfBzKTxyhXkjh9HV2jmn8UPoR8WtsWx8QJubw/rrkd7k4U79pBfTydjTAy2ry3UducWxuU8xU2X+sZ7vjQkR8YKJC/1xdW3J7GQyobaQsKxObX6jrXPL5krb2AnWtjZ/M75ri6sn4f41Nsfd+s/hV4Bp7MDTJ9vlRWKVppVI8uSdZrSxzc057JxNgYyQz8pJfPTt3my0GDWes1h6VBza6z4Ce4nW2NMDBZ6BerFEpkTZzG3txHVPDfOXMf7fYXjhiRRz8TZGCj0CsiGR9PbLe4ODnBy5gWzr74y2l3lYv8DakPqfilCH2L4+xptG75J6uoFvK0SltNJeeQR68+m4mwMbvqfi0w4NtbRNF75B9JXe5Hpr1HV9ACqmY+fz6tuiESQK+hDrJIeQDUTxKDqCE1TaBdYSYgdZwvN6wAAAABJRU5ErkJggg==",CZ:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABQklEQVRYhe2RsWrCUBhGP03AWhR07VakW6GdRRB8CrdOnVtw7ZCX6AMU2lco5AGEFgQdJYuD2C6FhkIhlIBdP5HIjcn1/y94tiRwc79zgCPCDB+e159fP2tX8Va1y+AlnKLVPMH1xZm0z9x49U4/SP5ShG8RZtEHelfnaJzWpO9lTJUfwvcI3dtHPL1OpO6TG6/e6Qf8wrUa1awPrtTYKsC4UCOzAKO5xs4CjNYaRgUYbTWMCzCaauQuwGiosVcBRrpGoQKMVI3CBRiJGqUVYA5Zw7d1cCX+xu/dPeY3C1u/AGBpwCBeYLQco50mNo7foNQB7TTBaDnGILZrnSltwCGtM4UHSFhnCg2Qss7sNUDaOpN7gAbrjPEATdYZowHarDM7B2i1zmQO0Gyd2RrggnVmY4Ar1hkfcM8647to/Ygm/gHSII7bdZlbywAAAABJRU5ErkJggg==",DE:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAaUlEQVRYhe3VQQ2AQBAEwVlyCVowhilcYILwwQFaQMQ+Opd0KZh+TSK1VJKdHtFRST56RMdCD+gygGYAzQDa9AHjpBc01esTswygGUAzgDbWjZ7QU9/jkaEMoBlAM4A2fcC4jtz0CAn0AwaYCVkSQ7WdAAAAAElFTkSuQmCC",DK:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAA8UlEQVRYhWM8xm1wkoGRwYyBDCAS7sWgOqcVRezL2asMlx1iyDGOdPCf4RQTfWyiHRj1wECDUQ8MNBj1wECDUQ8MNBj1wECDUQ8MNBjyHmCRrcmUYBHgI0szh6o8hhi7rCSDYnc5pe4iCvz58EmC8euVW1+4tFW56WIjlcG3q7e/DvkkNOqBgQYs77ccePvpyFmy8gCHqgKDgJMFitjvV+8Y3q7fRRXHEQJ/P3x+y/KoedoLBkYGOXIMEAn3wvDAz8fPGe6XdFLFgQTBf4YXQz4JjXpgoMGoBwYajHpgoMGoBwYajHpgoMGoBwYaDHkPAACAKDH+2uD0
2164QAAAAABJRU5ErkJggg==",EC:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAADR0lEQVRYhe2YPWxbVRiGn2tfX//ea9mhTS5OWqVqm5pGFsQDAxUSCQpbUNshVTMyscHQvZ0REiMsDEUCKoEQv5HagUIDUpW2SRsMlkuaxk7in9iOndjx9c+9h4GRMUfygJ/56HvPq1ffd44+GNBfFLGO6PcljoKr3xc4KgMD/WZgoN8MDPQbVVahxqGfL746QzavE9BHmIhHuJD4Elv4Wbw3y/az5wQCgvMTm8y+nselOlJ0pRgQAu4va3jcOUaiKrncc7aaw6SNGywtP6Sa/QWBQtDTpVTsspqOMjVZliEt7yXuOkGsjhfdV6VaU/nhJ4PfH5ygUm1y9VKJmekGRsjmwDqG39tAVVoyZOX1gJsWqdQp2o6bVkDjoOki9oKfa++qXJyrg0+hIxT++HMcl7AQQpGiKyWB/P4kDcuDUy3wMKpj+nvUN6Z50jmJikNSz+Abuk3GMphpNLGjJiFfB9NIHdmAlARC3iKlrEbvWJOn5QCFx3MsFqYY9lWIeKv8mH2V9NplbhVjDJtldnNeDF9RhrScJta9u0Q1DXoavWaA3nCS+fgswhHcK1vYQzZiz89mIc+OZRDx5AhqcppY2hgdGyvz177J+Z997F+weFK4g2maxB2HYKWOEB1uPDigdtogPpaXJYuqvn9TSqGrU0vMnE2RfjTOmctlKo0e1UYeO5TB0RVGvAnWVsax32jz0d23uLX6mhRdaQk4joKCoO1ScbU8/Ja3KdVfQrHDJM9tcbbXoe1SASFtAoHEMeoIhZfHNlkJmLi/+ZvCjkGoucaokmd17Tjqd095FDB5ZWxDqgFpCZSbOokXt9k8EcPqWrxTzrAes1EcD2+WaxQf75GaSDBp5tlt6rJk5RlY2YqTq0X4bOFTFtMLJIufcLItsB2B21D4fm6BOzMfkN0bYmX7nCxZ3K6Ji9ePXkZghj18vpzADO+xU60yohdZz8SoqDqHQReHPkG9E+a9r6/g0yLUWnJ2CZISUNioOBwPjfLh3XnqrUOSl57x6+0kVlfl7cR9Pv52GjOsYtsOpYacnyiA4p67KW2torkFHfvfBvW4bOaLq2xrBkuRU3Qd93/OyECpjJ4e7IX6ycBAvxkY6DcDAwP+7/wDKFZRo0QZ/jkAAAAASUVORK5CYII=",EE:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAcElEQVRYhe3WoRGAQAxE0Q2TsvB0g6AaFCVRxykkNldExJ+b2VfBfpVIxor9vB96REfoeose0bHRA7ocQHMAzQG05QNS/0dvaAlJvsQkB9AcQHMAzQG0HGPQG1qiqvxKkBxAcwDNAbTlA1LSQY+wlU0sPw5ACEUEngAAAABJRU5ErkJggg==",EG:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABcklEQVRYhe2WT0oDMRSHv4zT0qm12KqouBJBRTeuXPQC7tz1mL2AB+jGohfoSvzbagWHKZnOTJ4LFQ/QhCDm2wbeLx95yQsE/KJuOofiexPLEPnewLIEAd8EAd8EAd8EAd/E65cXDssLoBzWByUizr4S0/GAZveY1e6pqwj7LWQqTalngJB0j/g6AaHUM0ylbcfZF5iOB6STEaV+x+QZUuaU+p10MmI6HtiOI7ZdsJg/8fE8JH29pbG6h6lyZvdX5OkdSXvfdpx9AQBEAKHQb79tI8ZJlHUBMQUqiqnVWrR2eogpyCbXLFSMVIXtOBeXOEdFMUn7gDK9p8peSNoHqCjGmIXtOAcCZkGzc0LU2EBnD+j5I1Gyydr2OcbktuPsz4GPpyFSacoiAyUgIChq9TVUVKe927MZZ/8EWltnCGBMjlJ14loLqTTyvWYb1e/3nU3i+koJwKJy89jBz5j8w/z532gQ8E0Q8E0Q8E0QCPx3PgGFZo6Lo8E0HQAAAABJRU5ErkJggg==",ES:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAACTUlEQVRYhe2YS2sTURhAz507nUkmmU4aTYo0tiKt1Srowseq1Qpd+ASXguhG8Ge4FX9DEVx14VZcKaiIOytKddWHj9KkkKZJmzROZpLrRlqkIlPbZBbO2Q+cwzeX+3EhIlzE20S/CltiN2hhC+yWKCBsooCwiQLCRqg3RPdAmOwq4Ov6Pr5U03vl8k/oO/3A9aHegGZT0CzXQGiUdYFlKKQGsh2Wf2HHAeU1wfSDHvxkC0EMTQelDMx1ybn7Jex4Z49U4ICNkmS9KOk90iB7yaXY1DCsNQAaG5KM4WHHFbVVjVhCIY3OhAQOKDUVxViT7hWJPi9J+VAvmqTv3UVL+NiWxGWKuWqBtA+5TGcCAh/i7v1DOAO3cCsai7M67qkfVOa6ENZV7A8XqJQm8EQWJ3eTZOZYO51/I/AElqcNlmYL1FoxfNOgkB7AaK3heTWUZaALi6V3JoXZPNlDktSZdmpvEXgC7nKLnvFxUv0eet2jNmPxcnCUycknVI7a+HENZ8AjPTqGt6Lo1PUYeAKyS1B68R77bBbz5Ap9Swt89IaRrTr5h9dAVzhXcpQ/zZByNBDt1N4i8AScYZPeOxNIXW26XT/9lMv+cxqDChFvoemK3tvj9By32qS7ncABib5vxOqPSCarKPErwY+hZRIY3xVCFyRSqxgbj4n3zbfLdxuBf6HX+TFWPYfz2Ty5EYvlBZvmyEXUUArz8zMO9FdxU3leLZ7Aloe5cXCqnd6b7ME2KujYif0De7CNhruNR+9CYRMFhE0UEDZRQMT/zk83drTDXLdyGgAAAABJRU5ErkJggg==",FI:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAzUlEQVRYhWNgGAWjgCLA+P///9WkaiqdtEvt9LXnQrjkS2Itb/lYq72jzGnEARYGBoYQUjU9eP6R4eC5Bzjls0NNZShwE0mAiV4W0QqMemCgwagHBhqMemCgwagHBhowMpg2/B9oR1AChnwMjHpgoMGoBwYajHpgoAHj////Sa4HQitXM6zZew2n/Kr2UIZQZy2KHEYsGPIxMOqBgQajHhhoMOqBgQajHhhowMLAwEDy4K6CpICag5GCMC55Tg6WWwwMDG8pcdgoGAV0AgCrTSG9AH1c4wAAAABJRU5ErkJggg==",FR:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAW0lEQVRYhe3PsQ2AMBAEQYNEB0RkdOLOKchyA07sIi5YJO/k9/otRazjuutMDoz2RQ/05432Z7T+AQNoBtAMoBlAM4BmAM0AmgE0A2gG0AygGUAzgGYAzQDtbgECSgVk6LpDpQAAAABJRU5ErkJggg==",GB:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAADaUlEQVRYhe2YXUxTZxjHfz1SBaTWEEWazihDxeLi1BiHASNcDHUjExJ0wpyCJFJMDBGNqIgXOmPwM92FFmMDyxKIigFN/Vo0sARj41TUOIo69hGDlGoMtSJk6LoLPE0K0g88rTE5v8snzfP8/+/H8z6nICMjI/MhUfy+ZI1Lu60IdWqSO/j0+UsOn7jCj9WN9Pb1B5Twvz+PYq+u469NezzicUfKicnLRvh0Q0D5RivDyMtOomx1MoqzF7Ad/Zk3zh5UX8xBu60I4dX9h7RlFWLNKODFtZsATIyOYt/WTP5u3kupPp2IcGVARaVgtDKM9TkpPKwvYYfSTteXq+ioMDJ2tg6d2UTipZ9QpyYhaK6eRFuqp+eeFWtGAa1L1+JosngY+aNpN8X5aSExEhGupDg/jfZzW9ipcmBfmkunoYrIz2Yws74SndnEuOT5AHTaHQjx3xzkB6eaSZdr0ZbqedX6iLasQg8jmhg1R8pXBHVHxBVvO1PCZuUzOt+ueGTidGbWV7pXHAaO+Pb9DUxL3YXwb/9rjtc2Mz3zkE8jwThaovBHDZvZqXLQtSTHp/CpKWVUGH+ht68fQUwUaiPvK1xEGJw42EakEi6iUMQVuXwV9NbGBrffidFRXtvoY+s/fuXxt40rXC6XVwMjwZsBqQmzV9dJntR5/bZfMSlQWMbPlnwHQsmQS/yxIRv40Ci6qk5Lfgec12/z7NR5j9iElV+jWjhP6lKEBaO1AUMMqBbOC04b9TWfiw9Z+cav0MaOd8edlhY6Kow4miwIkRHEfJ/FmHWriJ0xxWu+Dlu3X3kMDS1+PWTD3gHxyW//dTfGvbnuok5Ly8BIsSwP5427xBbmMrnxJMboBOIzD3stBhC/eBf6sho6bN0AqJLmDowQF6tRLfgcW2UNj9O+Rf/8Ae0NJT5HlCEGRip8uFllMOKsJZURt4FgCw+WESHUwqU2onjS1e3SxKjdCd91qUatWcGhM7c4XtvsU/T7ftRHhCtZn5PC1sJ0/NEliD96ce3mwDfxsjxe/nYPTXE+k5vqMEYnkJBtwFAV+D8UI6G3rx9DVSNxi8rfuSM6s4moubOwVdZgS/8OQRRuzSig504rmuJ8Pmk8zbHIqcQvPyDZUQmU4Y7WuOT56MwmdGYTY+ckhlyXjIyMjCf/A4t3fvE9wDmIAAAAAElFTkSuQmCC",GH:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABgklEQVRYhe2WPUjDQBiG38sfClKbgoIOrUs7dBE7aUFcVNDZxclZcHJ0VQQHZyGgg5P4iwgO1lYH8Q9ROokKQl3q0EGEoom51CEYKP4M7Z2HeM+WHHzfPZe8dwdIxEIuzURF9CTqQRE9gXqRAqKRAqKRAqKRAqLRmvscbsVdzz/kNYVw60HcfCu3q0TmxAEB0N9j8GoBjVtlAJv7NncBbhnwPGDn0Mb2gQ3q8erC8As8FCnuCjR4vi1QPJb8mVtrL0jE1GAsHlMRbVM/1agFZhlwKTBrlTFjleF9s+KEABOjjZibbIKhswk28xDnzhyMTT2jWKq2aDEVLE2HMNTLNg9cdqG9YwfD409V73YXwhhMsw8zlxBnT/2zxdBJ8Kt8vGMNF4GtrI2OdhW5xTCOlk3Eoyo2MjYqHE4c5gJX1y5SSQ0XqxF0d+pIJTWcr0QwkDaQv3FZtwMZme9iui5vrxR6w9db5E9jtaKt34eYFvxt/vxtVAqIRgqIRgqIRgpI/jvvVVJqxcXfp5oAAAAASUVORK5CYII=",GR:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABU0lEQVRYhe2XP0vDUBTFT5pnaCxCDYKFglPX0q1uTkI/gJtD/QjugpODo4vO
2164jh3jB+jUMVk6VLvolnSyKdQ/0aLESVz6moTc9Hkhv/VdDufA4b73gAK1aFtdO5Idjq86qFsmAODOnaB77azNWFJKqg1khX0AQSFSq5ZxtF+nkEoNSYC9nU1cHjcppFLDvkLsA2je9F26RmvVMvSSBgAIF98IXhdL5x68OU5vh/k4jEH87vk4TEOHbHYyC+EFIaWvxPCvkO340gp1WrswDR0A4Ach3KfZ0rnpyycG4+d8HMZA8pRoNyz0zw/ycRgD+wqxD0ByE997cxxeDCikUkMS4O3jC85jQCGVGv4Vajcs6aEh/vJtVzawalYVWhRF0jXKAfYVYh9AnNy4qj1kQtiOr9pDJvhXKOl/4L9SrFHVsA8gznoj1R4ysfJHxgH2FWIfoEA1P1RrUq8MjauNAAAAAElFTkSuQmCC",HR:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAACyUlEQVRYhe2XS0hUURyHvzt3zMdM08hkWCYaWGiv0bTMkoralBKKLYwgkkLCXUgLg2glvTYuKsraSUIUlpFZK6nUlBzUfJTZiJaJWY423kYdp3tPiyhatPOIi+63PXC+8zv/8wQTExOTxURpdW4Wiz2I+WBZ7AHMFzPAv/BtyQK7ndGCfEYL8sFmYyI9ayFUWGV1ZMQsp/LiFba3tvD8tofEVdvoWucjJCDkzaP7vcG50/vojjU4fukmlq/jUrzSKtBWXMLQ21tUxm7gy5yKZ0xh1HAxKaLZkFTNzpTHvHBn0DI1hudkiSytvAq4a+5SUVaBXVVIjQzgnf3Bt5hsLLrOo0aN2LV2TlVdJiIsDNfIK1laeQEi3r3jcGAYQ8COzBUUDrxBOXsBALEyltHI9TQfPEZ0pJW9xSdkaUFIZLj8qujNKRITdQ0iNOkX/UdLRf/RUhGa9IuJugbRm1Mkhs9fk6kUUk8hfUpDe9mOPj2N1enge3sP3zt6sTod6IHpX21+TaZS3hICsGduYeORPHz36um5WkVSZTkoCj27C3HsymTjszsEBz/KVMq9B1SHDZs7hbmxcQJdfYQnrGZJfByBrj5CY+PY3CmoS+0ylXIDaE1tdKbl4ty3g9TOerwnyvAWnyG1sx7H3iw603KZavbIVMoNoM/MEhz6BKqF8IQ4giOfmRv5THhCHIrFQnDoE/pMUKZSboBlu7aSPtiI1tiGJzGb5Ps3SK65jicxG63JQ/pgI47sDJlKuZs4PCEe1RaFPhNE92uoUREIAbpfw5gNokZFErEmXqYSheWXpP4HnhxSyMzbSvSBPXRs2o+iQGrXUybrGmh92EZOrSJTJ/81mlNjUP2gj8DAR8JcTqyuaALeD1TVvie3VrZtASrwGwsCt8sA4LXPgoHcmf+N1D3wNwYKHT51obr/g/kjW2zMACYmJib/Nz8BL5SYPu4wROoAAAAASUVORK5CYII=",HU:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAATklEQVRYhe3VMQEAIAzEQIobJKCAFSkoxVIR0SEDOQWf6VuTJFLcMZMeUdHpAVUG0AygGUCLzPQHSAbQDKAZQIt1tj9AMoBmAM0ASfrbA00tCF8CimqHAAAAAElFTkSuQmCC",ID:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAATklEQVRYhe3XwQ0AMAjDwLRi/5XpEDwsVN8EsXiRiHU6aXrExKUHTBlAM4BmAM0AmgE0A2gG0Cq9+h3YfwEDaAbQDKAZQDOAZgDNAP3uAa2nBD4LbBEPAAAAAElFTkSuQmCC",IE:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAATElEQVRYhe3POQEAIAzAwBZtWEEJLrCCuCKiQwZye59ESBIp48zqLKh1ex/sbI2P3nWeATQDaAbQDKAZQDOAZgDNAJoBNANoBkjS3x6aSASw+sr9CwAAAABJRU5ErkJggg==",IL:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAACI0lEQVRYhe2ZP2gTcRTHPxeSDkFbqIO0RiGkGiq4hEgzFEQFLYIudtBEcaiLRNAhUqGUzpaCQhEq6NBRRHQqKf6jtQVba2iqcF6DEpViA9o/MWqbNHluEbHgcL/jPMhnuuNx931f7r3fu/udJiLdOBhNRMTuJMzgsjsBs7hfvc3bnYMpNCLJWgnZSc2A3TjegPZo+oujm9jSQZZbKgKwvbHOKglrS6hnKEPPUMZKCesMpIw8wyMLDI8skDKsG5aWldCBC9O0+LwIYHz4zsStNjRNvY4SA09mvtJ9c756XiwJr999Y/dOLwCZTz/YF9hKnee3g2vxPRwObzMrraaEDoYaAdgoC2c6mtGzBc6f8JGI+klE/XQd96FnC5ztaGajLH9cYxpRxER6WTztoxLrS0tL57isFcvV2FqxLIGT4xLrS4unfVSezy6pkhVlBkRETvemhUhSHo7l/oo9GMsJkaSc6p1VKSlKVyHh3+3kUtzJygxMzq1w/1mO2NEmEoMG66VKNbZeqnBl0CB6pIl7TxeZnFtRJYtbxU0qFeHSdZ29/i2EWxu4+3iRiwM6+1sbAHipr5L9/JN45y7evC9w+YbO1O0ILpf5p2HbMtofD3IobH4lsnSQBXxeRGD+438+yDYjZeRp63oBwNSdCKFgvRUyanpgM0LBes4d21E9tgrHv047/4Omtq1iMzUDduN4A9qMvuroJq79H7AbN3DV7iTM8AtZ2yrPRRBFDQAAAABJRU5ErkJggg==",IN:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABvUlEQVRYhe2WMUsjQRiGn9msJgZhYyFYCBe8w+I4MOAVBzYqKQRB0t0v0C0l4K8QO0GM+h9WEQSbs1QsJLHLqpguoBLXKGqica5Id80V++lw3Dz1MM/38s18M2Axi9KlcW26iDg4pguIiw1gGhvANDaAaWwA07h8+3lkuog4KK21+Fdid/ecra1Tms02AJ7Xy/z8GLOzn6VV8gGKxV8kkwl8P4fjgOMoXl40pVKZTueNlZUpSZ3sHQiCkHS6B9/PcXPzSKVyRbl8RaPxRLH4Hdd12Nk5k1TKdqBQCFhdnSaK2uzvX9JstgAYGOgjn/+E5/WyuHhAEBSklLIdaLU6aA212h339y3C8JYwjIiiJ2q1OwCen18lldJj9M9mKpT625p4uJKbJZMuSimyWY9qtcHoaAboHqFs1gMgleqRVMrege3tM46P6/h+juvrR+r1B5SCoaF+BgfTrK2dMDExzNzcFyml/BhdWjogkXBYWMjhut0x2m532NiooDUsL09K6t7nIdvbu2Bzs0IUdadQJpPC98eYmRmRVqHG178eiu/6gbiX0cUP00XE4Z//jdoAprEBTGMDmMYGsPzv/AYJgJdnvkY5rgAAAABJRU5ErkJggg==",IS:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABdElEQVRYhWNkMGx3YSARZIYayuqriksInzwnwfnyFR9M/LWNxcOfQgI/W+Yevfjk5edfpJpLDmBh+M+wm1RNanJCDOkhBgxPN6xh+Lh0O1zcKc+PgdNEi6F93nEGhv9UdSdOwEQfa2gHRj0w0GDUAwMNRj0w0GDUAwMNRj0w0GDIe4Dl+vpUkjWJCXLjld8zM4Lhz99/5LqJJMCioSBMdUNVZAWpbiYuwHhD2JHshu+/L98Z/v9ENPuZ+HkYGFmYqeIwYgHL37cfqWbYv49fqGYWsWDoZ2JmYX6yNQ+GJMT4//9/svPA05galC6l4unFDJwmWlRxGLGA5caDtyRrEhPkZhDi58Apf+fxe/oVo5qBs0nW1F/izFAQbYpT3iV9BcPD59QrHPCBIZ+JRz0w0GDUAwMNRj0w0GDUAwMNRj0w0GDIe4CFgZHBlVRNN+6/lp2x+ry4sJSyBEdcGHyK6dS5Vw9/3P/58+//f5cYGBnoMsUEAEhSZQJOFvxKAAAAAElFTkSuQmCC",IT:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAWElEQVRYhe3PMREAIQwF0YAUWnSgCBsoQgSWQESKvZnb1/9MNkKsEmvczIE7d+qB03pqX1PrDzCAZgDNAJoBNANoBtAMoBlAM4BmAM0AmgE0A2gG0AzQ3z3ZYwVXTvBIaAAAAABJRU5ErkJggg==",JP:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAACEklEQVRYhe2YvW/TQBjGf7ZInIEkSy3ihFaZEKpoAupXKCM76gILbAUhFrpW/QtgAyRQp04Rgi6oMyuiiQDRGAlVbBFJPygMSRiwo9oMKEspUvLeS
2164R7wb77nnvc53/k+ICZajDAMw6iLUMGMugBV4gBREweImlO6OwyPAjpbDbp1F6/9DQDr7Bkyc1NkF8oYpt4x0xYg8Hxaz17SfLiOf/DjxDbJ3BjFlSUK925gJhNafLXsA17rgMbiMr0Pn4dqf7p0jvLmE1LFvKq1eoBfzV3eVW7h738fSWc5NjO1KqkJR8VebREHnk/j2v2Riwfw9g5xF5cJ/L5KCWoBWk9f8NP9Itb3Pu7QXttQKUE+hcKjgDeFq/9csMNiOTZXWq/FfyfxF+i83VYuHv5MpW7NFevFAbp1uelxOlEE8HYPxaY6+5IvYsMQS3X2JQ5g5W2x6V99OWNirThAplISmx4nu3BRrBUHyF4uk8zJR26AlbfJzF0Q68UBDNOkuLIkNh5QXL2jdEJVOgsFfp/38zfpbe+I9OnpSWa3qhgJ+aFY6ShhJhOUNh9jOaMvaCtvU3r1SKl40HAjS004zNSqpC+dH1qTnp5ktv6c1HhO1V7fu1Dg92mvbdB8sI63d/LGZDk2xdXbFO5eVx75AdoftsIgoFtz6dQ/4X3dB8Aaz5GtlMjMT2m/UsYvc1ETB4iaOEDM/85vkMeuMUJQpcIAAAAASUVORK5CYII=",KE:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAC90lEQVRYhe2YTUhUURiGnztezVFqQmYCpeh3yCKKQacgXYjkQGDQJmaVRaRbcRltWlkiGC2ktG0bWxSUBI1thlaVFoU//VA4jSR0hwppphyc+7WY6037gWA+moJ54SzO/c593++995zzHQ6UUFwYgBQ7iULgKXYChaJkoNhQMWCa5l9551dQMdDc3ExbW9sfj49EIjQ1NWlIA/ldqKDm9XolkUhIMBh0nxkgUZ9Pjvl8YqwYGwwGZXZ2ViorKwvWdZoKifT390s8HhfDMASQUyCTHR0yefy4nFg2ZRgSj8elr69PK3k9A36/X1KplLS0tEgTyBjI3NCQJC9fljGQgyCtra1iWZb4/X41A0ZnZ6daIfN4PGwOBNgzMIA3kyF09y7YNk8OH+ZLdTWTPT0kLAvbtrUkMYeHh9XIAG5Go3gzmTy5zweS/z7edJqdL19yZmREVc982NioRiaANTPDWqefS6dhxddOjY7yoLERQ00RzIWJCTWyV8AdoNvpZ+fnkRUGbmcy2BMT7FBTBJ1q4uCR05axMD7uTiGAh8AG+HcNJIH3QBaoAD7cu+fGsoAFzGkKomzAIr8OUkAdsL23F2ybp0ePurH3moIoH+Z+Wpwi7hQyfjemQKj+gQD5BANO//XZs66BH2NaUDWwkfwiLXf6NYcOgQifp6Yod2IbNQVRNrCf/PxfxrpweNU2GnbGaMJc19CgRhYCPDMz4FTiNbW1qwwcqapi365duoVs//i4Ih28i0bh+nUAPFVVq+qAv72dA9pHia5rXWpk2VSWbXu3EhqrxvsxzdKnT+5RIlNTzVRoO7cunqQiUKGmaV69f1WNrHtTN+ffXKIh/JVzMfiaSLhT6EI4zeMXA5zecprB54NqmmU0cE6DqN6ux2N7mM5Nk1wP5TaEFmtYTCa5Yj5jdDfkynLU2XWYiyaWYWnIYtClc7EVMSPEsjG3NBrAsbc+coZwY9PCdxEbIhURYksxDVk9A8VC6V6o2CgZKDb+ewMlFBvfAGR8dzfM5+edAAAAAElFTkSuQmCC",KR:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAFy0lEQVRYhe1YXWxTZRh+zmEtW7tEsggIYrJ2Q1FwDDBOlsqKBBaSDQQvJlOEMXaBbQWmJuOndBdi4xbPGSmOuNFBNM5gJF6MZWEwORCIAdE2QrdEWaoYhQX/wlalPcc+Xm1YHd3pqlmMPMm5OO/3Pe/7Pt9Pz/sWuIuJhUCSE51EOhAnOoF08f8S4PV6Icvyv5ULZFmG1+tNiaNbQDAYhMfjAQA4nU709fWlll0S9PX1wel0AgA8Hg+CwaBuri4BqqqiqqoKRUVFEAQBLS0tCIfDaGxshKZp48sagKZpaGxsRDgcRktLCwRBQFFREaqqqqCqqj4n1AGPx0OTycTjx48zOzubHo+Ha9asocVi4eDgoB4XoyISiTA/P59lZWV0u90jMZxOJ8+dO6fLx5gCgsEgjUYjZVlmSUkJCwoK6Pf7KYoiFUUZd/LDOHv2LEVR5KFDh7hw4UKWlJSws7OTBoOBFy9eTE+AqqpctGgRi4uLKUkSMzIy2NHRwZycHLpcrlE5v355hVe9EkNPVzLw+FMMPP4UQ09X8ts3mvhbf3hUjsvl4tatW3nhwgUaDAY2NTVxyZIlnD9/PqPR6PgFNDc302Qysauri2azmW63m6tWraLVauXQ0FDC3Hg0xquvNfKzQhs/Kyge9fm80Mar3jcZj8USuNFolDt37uTq1avpdrtpNpvZ1dVFk8nE5ubmpAKSXuKamhooigJJkpCXlweLxYJjx47B7/fDbDbfvkeqiitbtuPGBx8B8fid71s8jhvvH8WVF18G/3RJjUYjli9fjo6ODlgsFuTl5UGSJCiKgpqamqR3WFcpEQqFcO3aNVRUVKCyshI+ny9h/OrrEn44cnQsNwmY+uwzeGBHbYLN5XKhvb0dR44cwYwZMzB37twx/eiuhTRNw4EDB7Bp06aE1f/ui68wsKEaiP+ekgBBFPHw0XeRac0dsUUiEbS1tWHLli3IyMjQ50evgDvhnVf3Y173++PiTltfgVmvvJROeOiTmQQdfTcxb4w5JzKt6MqajR8nZeFB9Uc8F7mEXO0XDH7yabrh0xfQqU5HjWjCvfFfRx333mPDh6ZHRt4vG6ahM2s25J+7UXxtIN3w6VejMUHEnilLERX+vhbt5kcTkh9GVMiAZ4odqjgp3fDp78As8RbOT74flfeuxbrIJVi1X/CTmIWurHwombl35N0QTeibOhuPpRk/bQG2+ybhm++BrzOmwHvPkylx4w/9fXdShe4jpGkafD4fIpFIgt2x/gkISP2HTATxZMXSBFskEoHP50upwtUlIBQKQVEU1NfXo66uLmFs8dICVNwX1R1wGOtmRmFd8FCCra6uDvX19VAUBaFQSJefpN8BTdMQCASwa9cuDAwMYNu2bdi8eTN6enpgt9tH5kWGfoP9uTZcjGbrCvpE5iA+bq9BlmnyiE1RFCxbtgwHDx5EU1MTpk+fjr1792LBggVJP2pJd6C1tRV2ux21tbXo7+9HOBxGWVkZqqurE46SOTsLp9urUTkjmvQ4iSSenxnFx+9tTkg+FovhxIkTKC8vRzgcRn9/P2pra2G329Ha2pp8NZJVesPl9OLFiynLMq1WK4PBIHNycuh0OkflnD99iS9Uv03rymYaS9s4udRP68q3uKG6hRfOXB6V43A4uHHjRl6/fp1z5szhvn37/plymrzd0Ozfv589PT0sLS2l3++nIAjs7u4eiz4mTp06RUEQePjwYa5YsYInT57kmTNnaDQa029ohvHXlnLPnj1cu3Ytc3NzefPmzXEnPzQ0xPz8fJaXl3P37t0jMVwuF3t7e3X50CUgFouxsLCQNpuNsizTYDCws7OTDQ0NVFV13AJUVWVDQ8NICynLMm02GwsLCxn7S9OTlgCSDAQCNBgMlCSJDodD9wrpQW9vLx0OByVJosFgYCAQ0M1NqZz2er3IzMzE9u3b9VJSgizLuHXrFnbs2KGbc/fP3YnGf17AXUw0/gB3sv8AHpOZwgAAAABJRU5ErkJggg==",LT:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAgElEQVRYhe3XMQ2AUAxF0X5SNLAwsqAASXhBABawwMzEhABUMLGRj4gON03eUfBu0qVmIiFlW8aTHhFR6t5XekREQw+IUgBNATQF0NIH+HR09IYQv56W3hCS/oQUQFMATQE0H97UD5n5en/0hpD0J6QAmgJoCqClD3CzMtMjREA/dEIM+riIWisAAAAASUVORK5CYII=",LU:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAdUlEQVRYhe3VsQmAAAxE0UQykRu4jM5k7T62gpUTiLUIcYgUn8C9Ce5DIGYiJf6M00yPqIj0XOkRFQM9oEoBNAXQFEBrH+DfcSY9osIzs3VA+xNSAE0BNAXQYr9fekOJ23bpkZEUQFMATQG09gFh5gs9QgT0A3QcEegC64KNAAAAAElFTkSuQmCC",LV:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAX0lEQVRYhe3WQQ3AIBAFUWhQ0gsKKoQbXhBQFZVTXYuIPUxI5in4c9otRZJI9bufoEdkXPSALANoBtAMoB0f0Poc9IaUGhFeYpIBtPavl96Q4jtNM4BmAM0A2vEBksTaMREKq+ktOnIAAAAASUVORK5CYII=",MA:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAACBUlEQVRYhe2YPW/TUBiFn/imN2mK86GUfoigGlSpHdqhE0PalYUyI34E/AgGKCAhhBjYEL8ANiTGtqSoUoduFYWhSEWBlsZJlPjbZkB0AYkiX8tC+Bnta51zdHxf6xoy0iX3emkhSttEHLS0DcQlC5A2WYC0yQKkTaIBDkbzfCrmk5RINsDbqmSzJpOUSDbAji7Z0f/RAG0pGPdCxv2Qw6JISia5ABs1ybLp0DxxaFWSayH2DvsiNdZrhV+uv6mPsmLaAGxUi799dsV0mHLCWPqxG5h0Q6adkFcTJTRyzA59Kn5E3QtY7
2164Hss9j3qXkDFj5gd+mjAy8kS024Y2zwoaABg2XSYG3g8ntEJiRARXP1ms9T3AOiM2PSE4GQEtssFHu2ZTLmBCml1e+C8F3LnYxdb03hx4RxzA//03vzA53ljjM8Fwd0P6syD4k0sIlg9smhYPg8NnV1dsqtLHhg6Fy2fa8cWQvHxSflnslUrcP3Y4krX5dZ8lYgcT/c6bJclrWqB1SNLqZ7yMbpVkVy2Au4bOjfaFjfbQ9aMMpfsgK0ExqnSBnpCY7+U51ljjNsHfQz7x7u+0Hd5MqNzWBT08hplP/70+YnSBt5VJU3T5d5+99Q8gGEHrL03aXZc5S0o/SvxVQom/jBhzrLmb1DawFmMqTQP2YEmfbIAaZMFSJssQMb/znflJqz4C7TXZAAAAABJRU5ErkJggg==",MX:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAACYUlEQVRYhe2YT0iTYRzHP+/eub2+29zMSJe2cs3MApP+IEKQWmD/MIJIwjp1iejQqUOHIIRuHUoouxZFEAVJRYeSRElNw1aNQnHacNXmxC2bzr3a27WLXd5HdvD9XJ/n9/3w5YH3fXjAxGR1IzW2XVgwEtDZdPaXkfmRppYhI/PWruiozUiAY0/NWiPzwEEjwxaD8pxjFsg1ZoFcYxb4H9PjIYaftPPt07sVc1hFBy4tZclkUkT7nzE1GSbY/ZpQ+Ca7aus4ffUONiVfqE/4CcwkY6TCnWQS71lITJL5Y8GiQ09PL/eunBetE1xg8Tceh50ZyYtWUMmcJvEzZcHpUigtVhn/3M9YsE+oUmwBOZ9I9AtzySm0WZ1YbAxNyrKhYiuyrCLlKfQ+fypUKaxA/+BjFuMRWJIpsiVxub8TS9lwqnbCCY2Tl65TtnM/JVu209v3UJRWXAGbpCHnF3L37RiJeRceR4C9+xrQKGB6JsmjW9eorj9MoHo36POitOK+Qg53GcGJAYrKy+n4OorX4yGCnUPH0kiyRJYdbLRbGIkPUbwuIEor7gQC/loUS5bWKg/HjxzFX1mF3wn34yWMu+p5lZ5n1uen0KlS7qsRpRVXQJbz2BRo4EXXA+ocYFWhWevjoj6E6vXR3tzAwJsblKyvQVFcorRif2SK4qT1xGWCoW5cEx+Z3XaKzRmIBjuI6Ac409KGJKsilUica9KNBOi3Xy67lor9YE7T8Jb5lt0zvKbSiF78VeJf3MVe3CspwLyN5h6zQK4xC+Qaa2NpRdZIQHrwg6GnRcDQ06KJyWrnL2m8s34A2fgDAAAAAElFTkSuQmCC",MY:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAACiElEQVRYhe2WX0hTURzHP3f3Op1aUpPpZjYpF0aS4kOgCD7kywgyAuktSMI3pZfwPXqsl4kPRdFbD/ViUDMi8KGNQEa6SlIHUgrmyoXmvGzOeXsYLLe72R92kAv383Tu+Z17ft8fv3PO7wcmJiYmB4kEg5pIByHui9we5U8LGhxbtDSts52SmZ63E1fL/slBjdf73+L+hqIZcDvjjI0E6Dob5cF4C8FwHWpC4X3ETvSHDdmS+S29K+3rQNPulV71HgpmoMm1ydtHz4jGbLRe6Wfle2WOve1ULJuJ6soU4QV7UQfLw8MllKunYABjI0FqqrfpvNaXI77CmqajZY2Tx37irFUB+LpWSVXFDu/maklsy7q9vo2OCpKeQRdAg2MLb9cSj18283nlUI5NljW2EgoDffN0t68CEJip58bdTmS58FvQGokIkP0bS/7E6aZ1JAlmFmp1i93OTfp7F2nzxFDkXRR5lzZPjP7eRdzOTaFCi6HLQDKVOQYV1p2ceUmCalsKADWhcORwMjuGjE2SQMtLxEePp+Si96ILYHrejppQOH9uhdsPO7LzmgZTsw7czjj+YCMXe74A4A82El6wMzXrKOjAMTQkSHoGXQBxtYyxJ2e4eTXMhe4lXgSOZ23l1jSTIRdVth2ev3EDcLQmyWTIRbk1TbLAJW70+QTKL1IHyq1pxu+8ort9lYFbPTx9fSLHXm9Xc75XY7nP7F4i3uUSSS1M0UImWzQGL3/i+qU5ZIvGZMhFMFxHYKZ+X8H5iG4lhPdCwitxF2JTvDExIXR/KQRCMyAaKerzGTsATcsvPcZC+tDcbOgAdL2Q0TD8EVJE9+uiMf4zuu73GzsAo98BExMTk4PlF3to1Av5YzkRAAAAAElFTkSuQmCC",NG:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVRYhe3PQQ0AIAzF0IFDUIMDUINFELFDSei7/2WNkCRSidlO5sAZO/fA6ql9Ta0fYADNAJoBNANoBtAMoBlAM4BmAM0AmgGS9LcLHHQFB/AWPAQAAAAASUVORK5CYII=",NL:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAbElEQVRYhe3WQQ2AQAwF0V1SFyAAJxywgg3scCFBAC5QU0T0MCHMU/An6aGtidWPaU56RMVAD6gygGYAzQCaAbQY14XeUNIz01eCZADNAJoBNANose0nvaEkrvuhN5R8/oQMoBlAM4BmgP7uBcUGCtTfZKdIAAAAAElFTkSuQmCC",NO:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABdElEQVRYhWPcxatfzkAi0Jpcb8XMzcU6/9hNyUdvP3PCxDWlBL+EGSu/+vXm3debZZ1nSDWXHMDC8J+hg1RNop52DGxiwgwHNl1g2HX4Olw8NtCGIS/EneHz5VsMDP8ZQqjqUhyAiR6W0BKMemCgwagHBhqMemCgwagHBhqMemCgAYtkpA/Jmpg42PHKswrwMZBjLjmARWdWC9UN5ZCVYKCFudgAy9nL98nW/OnzdxT+2/dfGCgxjxzAyKAQ/Z+uNlIZDPlMPOqBgQaMZy7dIzsP5NQtZDhx4Q6c7+VgwNBUFEwVhxELWIx1FcnWzMfLicIXFuRhoMQ8cgDLlbQakjVp9FQwsPDx4JT/8fgFw53mKZS4i2jA8nz5FpI1qbUUMjDg8cDvD58YyDGXHDDkM/GoBwYajHpgoMGoBwYajHpgoMGoBwYasDAwMlSQqun19kNWzNxcrA4inJJKdpqIKSb2f19erNn56tebd18ZGBnoMsUEAEREWH4iNM2ZAAAAAElFTkSuQmCC",NZ:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAADY0lEQVRYhe2XW0wcZRiGn112G7aCsogalixlwQVatSc0nNqkHZcQDCLFQ7uYRg0WWlpCE7UhUkyBqInEaNOGQhNqvGAXwRAiRSVLkdhIuaACaakSWIo0bbVASzlIZdOOF8Qe3B0cUcI2medqLt53/u/95/v+mQEFBQWFpUR1Lu1NMWRfDrrYddQ0dlJy8GucwyNuwsn6PZzdbAXgye/s+GccdtMYg/UUvvAUm/q6uTk6Rsi+HAK2H1vUAOoO4TlGapsYSM8mTS/S6yiivNRKqCFQ9k1CDYFU5SfR+vQyNn7v4LHt6UR8eQTb0Mwilj6HOuugA6FzlpObUxipb8a5JQdriJb+tmI+//g1IkIfkTQbg/VU7BZoWa8lznGcoC3JPN5wlK+uqXgiqZTcIvuiB1CpTLvEuwsqzFiH8EsvrsFhDG/vYPmGZ6hp7CTD5H9PC1WfOOdRJ9WCcng+MZJbt0SaTvXLDzDV1Sv+swxm+s/jzH4XgIijH6Azm2Qt4GlWPPFK8hoKB9sBeD88gdrmHlk+VUfAalkBFkq8PlG2titrNaIosv7YGdkezUKKWgyWaX0Q6gZuX8+6bsryeU0LSZGUYMbRLj0TmrsXMAbreWuHhWzrBlxdZ7lYVonK34/u2I2kxptv63RmE1Xdv3nU7f/iR1lDbDI+zPkLY/NqXk+NId/5A1dyLWTauhgbn3bTqP8q/NP3Xqav9QBvRAcwlJnHpYpqeiwppA49gLWs2c24t6SOKOEAn/08TpjtEIadr7Km5RuOh01jfydZ8vgNeFCHEB+JPSMKISGS5b5ayQC1J86gMYczKqo9Fg+gLi+10t9WfKfwI9WcSrSQPOCLtax53t28cPkae0vqiH62mGrnFOE1h+8EWTFN1R7BzTM+MUNetB/qTyp4cYUfv99wSd5f46NmbdOv5NlOS2syw3Q4X9qF5tEgeiwpcy1wslXS4InhS1fJLbLzYfm3cy1oO8RsZw9xH1UC7jvcPu3DaNJWtJPzj9/E1A0Arl73vPvwtxfZ/Yh6qQv4rygBlholwP9JzMoQYlYZ/pXHawIUbIuj0vgHFUYXBdviZPu85hh9yF9Hm+8gqFRsmjF
2164xfVLe35zXfI3qfLU0WNLnrlt+kh3Aa57AQvGaGVgo930ABQUFhaXlT+sJOVcszuG9AAAAAElFTkSuQmCC",PA:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAACB0lEQVRYhe2YP2hTQRzHP9c/eXGwRvO0pYLVSqMZbAtdjJSCgyilSwcVOrq4OLt0dWjdVLRLB3EJhCqUKhojFCc7KKKCgf6jvJg2QoJWS2lS9LlFoti7VC73St9n/PG+d98vv7t79x74mEW4ruvqnCDe2qVzeOq0jl4D/ACmqSrAx4VPpBeyurxsi6oCTCRnePh8RpeXbdEge+DDrMPnwioAiaevADjdHQGgObyPU5EjGu3JkR6j+S/fuTJ8j6npNxX1c2c6eTB6jRY7tOUExo9Re/9eJu9eZ2igt1wbGuglOT4sNV8LpEsIQAjBvJPjxLFWAOadHEIIrcZUUdrEmVyBaPthXk+M8PbRTWLdEZyVvG5vSihdJYqlTaxAY0Vto7hJ0Gr8h+I3xvcA8Jd5QMl8Ldhdb2IvsuMDNIjoJa0TuMvvtI6/4zvgBzCNpwKszi7ybW6xKo2nAmQep8g8eVGVRukyp5Ov6Tk28gUAnKkkAOGeTgCCdphQtGNLvfEAe5oP8n7kDtnUy3Jt+vJVWvpixG7fkOqNLyHrQIi++7doG+wv19oG+zkbHyN4yJbqjXcAACFYW3JoOn4UgLUlBxS/N4x3AGB9OUdTRzvnn8W5kEpg93Sxnl1R0gpOXtT6a9FNJ6TP/CyVqAsEKmo/ikXqLUuq9UQH/jQPKJkHjwT4H/wAPrudX+z7gl25CQKJAAAAAElFTkSuQmCC",PE:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAC8ElEQVRYhe2XS2gUZxzAfzuz+00e+zR0lSQm6WpTYzTGdyFtLbTNTTwIoqBeeiqFevHQggeJl9CLIPg4+ABP4kHiwYOiBxOhWyiJCc3TSKLZ7GaX7EyyJjuzzk7GW4vn/dI1sL/jMN//Nz++GWYGKpQXz2R4m1vKgFZjuqQLmIpsL2m9UtLqT4BKQLmpBJSbSkC52fAB3vUaPJFLsmAZuB6XLVqEtmDDunjWZQcSZpZbs49JWTop0+D27BPmTR0Xl4JTkOqSugMv9XHsooniDdNSVc+ppm8AMKw8C5bBb4NXSeezPP7xMh48UpzSduBFZpif//yDv7OviLiClYLOjdFHPJx7hqssE1bWGEwPYVg6A5NxWVo5AYnVBXoGr2E5RY42fMtPfXF6+hxG/hrjYCRGV/ALwj7Bg+96+VLdxGjxrQwtIClgeHGU1GqCQ9F2Ar4qzgQneBrrJyJ8JE2dbHIGo/COjJlhwp6ld+wu6XxWhlpOwMqaw/ZgCzO5BCO5WezaKE/EPm7PR6gTIfwFlYAQ2Kqg1d/MNm0Twivn8ZMyJZNfZGh5Dr+i4lNUAjNJnJyX34smdc8FmrVKjb7EvdAcuVweRC39qZccaz5SsltKwMlYN8NLrxlZHKUhvUjd9TtUn9GhpcjytIp9P4IVK9D5ywX67DSiWGR8ZZ5jEtxSbqGQCKK/NzHsd8yk3qCdXsbbaaGEHTweECeWcA2VbjNKq1rFkfBezu04LkMtJ0CogrOxbgK+Gl7UrUFmJ++TfhxTYGeqKPSHUHwHOE+c5mg7F/ecpVrVZKjlvciObv2a16sL3JzqY+evl/h+LIs99QoaBWrXVgbaqkkMX8HVmggForK08n/q3/4TZ3w8zqRHZ/ekgeNVmW4K06TVE+vYT2NzG35fzb/nl/pTL/1jrvHzDlIhhx8sH7GvPkNFY8taBksrsGPzftk6+QFKbQ2Ha7s+OraLetma/3zrNvl/ohJQbioB5aYSUG42fECFcvMBh/EKfLayd80AAAAASUVORK5CYII=",PH:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAADBklEQVRYhe2XSWhTURSGv/vSlFpr0ToVp6UiuFAQFDeCIoobVy7cqAt3gu3GsYoDrQMuGrCiVatSqRYHHFCkFBxARUQIUkupQ+OQpK0mTTqkQ17ePS4ibWOnVDFPId/u3nN5fD/vvMt5kCZNmjR2ompftUihy019U7vdLr+FEhExY5pL9z0UldcRCPfZ7TQulIiIhG+DkUOIlRy5WE/ZjfdYWux2SwoDK4yE70JvPXm5TlyFS6irWsfaZfl2uyWFEhHB9INz1pDi/ed+CkrdNPm6bFBLjniAUYiamrO3P7C/vI7O7liqvJJmjAACKAD8gR4OV9Rz4V4T+h/6PkYOYPrQwcsYU7eCc3b/9uuGNgpK3byoC6RIcXSMhJXVgbRdg6gHMVtQygm6G3rfIcFKEJOlC/N4Vr6a6yUrmDcz2ybtARIDoBDzK7r9AYggvQ2g+9CdtUisFcSKn1KwcdVcGqrXc2jbIrIyHTao/zQe0kKxIJb/IIRvAgLKAXmbceTvBseUYR/ibQ1TVN5I5cNPf9/4FwYCRD3o9hpwTkWaj4PpHTg0YSFM2w5WCCN3PWTO6a9J4Bxi+jHyi3jiDlHocvPmfThlATKG3VVq0GLgJhqLpREP1Z7T9DQ2/rlZkozSQrcA/bOFtuDI3zViC0V9X2guOU1b9Z0UKCeSGMDqRAfOgJGNyl6BfD+FMXMnuusx6AjG9B1gZPUf1909fDtVQavrHLrPniHwlxYSlHMuKmc5EguiJiwAlYExaQ0SeRl/GwAihO/V4DtwgqjXn3rrQSQGcOSi8jYBoFQmWiyUYyI4Z6Oy5gPQ7X6Ld28xkVfulMsOR9KjhNnyjZYTZQSu3ACtU2OXBMPfQv0oJGoSuHQNf4kL3RVJjdU4iAcYYZxur3mMd08x0c/eIbV/BSWxkOivhajsxagZBYCi991HfPuO0vHomd1+Y5KBYzJq8gYwcrBCHTSfLCNwvgqxLLvdkiL+T2zGCF69RXNxKbFgyG6ncZHRUfsUb9Ex+j547HZJkyZNmv+QH8y2ZOQfP27YAAAAAElFTkSuQmCC",PL:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAUUlEQVRYhe3WQQ0AMAzDwHUYBmf8UYxLByIPq5IPQfzLWlKkurvpEYlND0gZQDOAZgDNAJoBNANo4wPqneudJhlAM4BmAM0AmgE0A2jjA6TQB72MBmI8IeBoAAAAAElFTkSuQmCC",PT:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAADSUlEQVRYhe3YX2jVZRzH8df5v2metrOpxxxmhibNaKmILrVMGRkFERXhTXeGjqAgsRSiiwxEIiHQuqguBv2h0vLGwkgP+GeFQn9klm4hzSZuuVLTudM559fFCaFgsKM/20Xnff38vs/n/Xt4nuf7+1FlbIlYLQir2OEdzPs1rGqjI/rfThc+VYGxpiow1lQFrhSKhFlt9FzTPXBTHe33sOw2pjWQjRDrxSG8jy9DyzkiV/3O1rVxYB3pWl74hPb3+G0XVuA4XsPHqA8p6Qhc1Qq8/gSLkwsNHploOB9Xm4qZkom5taYg/mOcIgoF+elxyfkflKX6ww8P8Uof6HyeO5u48NYkzTW7JF7Fz5QeIFiKjeVxxZdx4naW4xtMRz603FeoSGDWZBZMJxKhlIhKnEBzC/cvEL1lgJv7Wd3M0JDYqQ4iCXqwAJuwbowFHm6h7xzZNPlLMeM2Y9NjbNjg885Tdu/vtfXNRZw5Q7ZDsGQCu9CK1eGHp8JNPHca2/ex+yjJVEnQingBZBvGyU6svTI2mItMnkfwA+aElvkfxMzz0mgHb1vFjEns76apb6a6h44bHr7Lms9qNaRTes9cdLir39mzF8264w1BepyoQVb9LXAQJ8MVqGgFigHJKE315IfiYhtJnK9z6XJBJp1SKJQEATWJqOgr+KqeRuWjNIZIuOErFsgdZ3uOdw5yPo6jxH/6xbub7lOTirlxQsL6J1u0TcrTTRCtKz/4FAaxN/T8lQkc6mHZbLr62NfYy5SUwh8d9HQrFgN9/UOUSkofPqc0n8LiBtbiRXwffngqvMjGp+jfwslB9nTx6IGVprbsZnOaJWtobGTnDtYeUuzKuvz0eOMTPWQobCG+PnyBijbxn0XmZGlpYqCPI5kBTbkHTfj0GLkce/bQe0rx/EKn59a74DvFDMkk8WXhh+cqW4mtj9M6g7f3EhRYlG519+mpsqWoi5eHDPfnJH8/J7OSxGwibRi4DuldQzf67AqeWc4Xx/joCDfUsK2Wxs3KZ/8qfKu8gc+FmPhfXFM7PTlN+70sncnsKTRGiHWjU7mdzoUVc2RC+y8UjfD1TuZdp65zxHnDKlQKUAqr2uipfhOPNVWBsaYqUOX/zl8n0vVXZJ8XHQAAAABJRU5ErkJggg==",RO:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAW0lEQVRYhe3PQQ2AMBAF0QUF+KgJnCGjDioIPU2oiH+YJsy7/81OlVhHtedLDszRowfe+4r2Z7TegAE0A2gG0AygGUAzgGYAzQCaATQDaAbQDKAZQDOAZoD+bgHrqgVEBVfWYgAAAABJRU5ErkJggg==",SA:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAADVUlEQVRYhe2XW2ibdRiHnyR2X9Ok65bDkjRNmx7TbO06V5uuOByd65y2DA8
2164XHvCENzJQBK8FRfDCO+9E7xRkKE4QpYjTDZ3bbLcZm8aa2C6ntmnSLEmbc9IcvJPdfpTyXfg99y/8Hn7w/t8/yEiLgjfGGlKH2A1KqQPsFllAamQBqZEFpOYBsQMn7EMsxYK8c+41bgYXyZUKDFv78MfDXPbNc9Y5zu8hL+ZWPV06M1qhhVq9zs//zPPi2ONEUnHi2STHbYMEkutsFbJMDY5zK7LEhH2Yd2c/FZVHdAPl6g5vn36BWr2OZp+afKWEab+eWr1Ol85MKp/h1fEZHnWM0dqswb3mx2HuYsjSi6XNQCQdYzObYsTaz4fn3+SpkUkmuoe54r9NtV4TG0d8A06znUYDjrb3EU5t8OTRU8S2kzxoc6BSqihVywCsJFZxmLqwHTiFZ22ZMw4XleoOdr2F6HYT3o271BsNVEol1wMLjHT0U65WRAuIbuB2xIcnuownuoJ3I8Dn87NcWrhKv9GGAjBqDxJOxciVi/jiYb7zXkMjqPn4t0uM2pz4YiEajQbnhx/hk+vfYNdZmBoc5+69NdHhAVS4rO+JGTg98BAqhYpMKc/zo2d5a/I51E0CplYdmmY1+wUNnvVluvXt+OIhXnFN02fsIJBcx9JmYNTmpPOgmYX1ZZKFDAoUzIW8zBw5SbqYZT78194KqJQq8pUilVqVr91XKFcrfHT1InUa/Lrixq63cDPk5eljk1w4+QzBZJTWZg39hzqJZe6RLmQRmvaxFAuSKeUxag8QSkZZ207w7PEpLt75cW8FTK06po88TKfOTI/BincjwMuuaWaXbvDBzAWW4kHOHZ5gq5jn28VfSOTS+DfDfHHrBwAec06QKeU5Zh3Ave5H39KGfzPCZjaFukngRtCztwJaQU2vsYOBQ51ohRZy5SKJ3BY9hnYi6TjpQoYv7/zEXGiRl1xPsJJYJZZJslOr4l7zoxVaAPjqz8sMmuxEtmJoBTWHLT18Nve96E0k/wekRhaQGllAakTfQvdzwj7031oUQ5taS6/Byh+rfgqVkujdfz+7auDveIh8pSh6ToGCbr2VMw4X70+/vpsI8jsgObKA1MgCUiMLyPzf+Re4VUynp0MeMAAAAABJRU5ErkJggg==",SE:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAaUlEQVRYhe3XsQ2AIBQA0Q9xSVtLh7JlGWdCF7AR1JPkXklC4ELDj5C6pFjL0bq5LvPlet5K84Xuyp+d9BIDaAbQDKAZQDOAluoezX+hPxj+BQygGUCbeqYnJ7IHGEAzgGYAzQCaAdLgTgMiDF132qMcAAAAAElFTkSuQmCC",SI:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABZklEQVRYhe3WT0sCQRzG8e/sKvZnN02RiKxTBNmhSx26dOhaL6Fu3erUC+o1hIgQ1LVLhwo1iiAISqggLW3FNnc6hNAh3CXRUZrPeQaeZ3+zswuapmkqCSmlVB2iE4bqAJ3SBVQL+S3wmh6Z03dyxRoN5xqEYGhkjvUFi42lUQxT7TPwfYmrjxVWts+4is8yaT0hkJRqE8y/3HCyv4ydtHuV9Ve+E7CSUcY8h6Zn4soIhvBoeia2V8dKWL3I2JZvAWEI7AjMJEzW0ikMA44KDWxHIAzRi4xthcRWyXfR6idk9uIsTIUBuCy57O5AkL3d5jsBgFQUTENQuHe/N5mC6Wh/fP8CXSHFcoTs4R11V+J8SLK5W/KV4W5nCyTQBC7G09gH58SqzwBkj8vkY4tdDRaUYPMh8FmIulUk8BZWe3X+FGgCLa99FLxl4H8lBr6AkNAf9+EfDfwEdAHVdAHVdAFN07T/7Qso3F0oXv9YbgAAAABJRU5ErkJggg==",SK:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAADFklEQVRYhe2XXWgUVxiGnzkzY7LZaLTZbKpECsVElrhtBMEb8SeotRYaWrzwF8Uf8MbSXrQ3vbEIRVBEQahFzEWk1GIpaa4bWmhrL4o16HohGjfRZFWMiVk3ySYz55xebN0Qtpn1J5lR2Odq5vvOYd73fGc+zoESwWJorXXQIl4GEbSAl6VkIGhKBoKmZCBorGID0ps/Rl5LTImZjTGspndwOn9D3X8wJVe2azsVXx+eUZFeFK2ATqcLYmb9EiqOHoFQqHD88PDMKHtGrPZLvdMm36qt5O2xsfy7GV+GSvag+vtBa3TqHiJagzFvHvJWNwB6fJzOKymejDmzLh7ACH/YNu1RYv+mBg6f+QQ9OATA3I6LWMvfBSlBCFAKTJPxtu8Y/fIrAOzmNayf30KiZ8gXA57/gG0JmJhcyYkLF8me/hajvIyKE0fJbN2NWLQQnR2fnOS4zLH86w2eX7ItAa4LgBlvRPbeQf7TherLbSF5sxv38hWQLqJuEQDacXLzfMK7AqZAO7kK2GtXE/risyn5+Ym/88+ZnftQfSl4lQxIpcE0QUrc3/8kk7iOTPZiLq4j3PoN6ebNGGVzMJc2IJM9uUlCoJR/J3RPAwPpLKImgupP4XZdzccN2watUXf7AJC3budzojbKw+HsLMktxLPWXd2DmPHGgvgNFebMhcs8sioKcm4sRs/9zMwpLIKngeu9Q6RXrUEagh+qm+hY0MiN8igfzH2fz9uTfLR0DwN2mPORFXRW1YMQ/FEbx5HKL/3eW0hrOD6ymFCshVPlywCIOCOMChuAZFk162MH85VoiyY59pc//f8pRdtF6y/dNGzZiK1zqzpgh6fkn4p/U42QXNnMtaS/Bozz8ZaiLSNU8wbZDe9x6NIYE4ZZkI+qUVo3VZM69z3KlbMidDqMwbr6Z+p5RlUVV/d+yoFfn9AvJquwgiHOrqskcuoY+CwensMAAJaJs30bJx/X8vMdyaGmSnZkErg/ts+iRG+ez8B/iEgEe2MzEz91oLP+9fz/44UMvEq89lfKkoGgKRkImtfeQImg+Rd7KA57dCjdN
2164QAAAABJRU5ErkJggg==",TH:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAAgElEQVRYhe3YsQmAMBBG4ZxkCVcQLFzDPa2sFLTSlA7hAE6gYKdDXPE4+L8J7kGOkKQkLBvq7qOH8KjoAbwUQAsfYOe4hF5iu583dED4I6QAWi7bQc/gYm3Ta4lJCqApgKYAmgJoNk8l9E2s9wBNAbR8rTs9g4u+FmkKoIUPENoP1IEYbO5mxksAAAAASUVORK5CYII=",TN:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAADG0lEQVRYhe2YW0wUVxiAv5lZZ3a2IEuqRkDAPrQKFZsmNraJ4RIEvMSkTUVRsLbBS/vgi5rqg41tE03atPFBiaJsQoCVFtSa2NRUCWJ8NoEEUPpgECGbVhQF3XFnZxgfNmG1WhOZMWPS+Z7mJP85//nOzPnn5ICHuwgR3rTcnoQdRLcnYBdPwG08AbfxBNzG5/iABfkEttQglxYizc8BwBwcQu+4TLShBaP3mqP5HPuRCYpM6qEDBLZvBvE/XqxpEj3WyMTOb7B03Ym0zggIikz6+TbkkmVYMR2tvhHt5Omp1fYtykOtXou6bTOCIqN3XmFs5XpHJBwRmHn0JwJffo45EmFsdRVGTx+IIv71H+P/ZDVSbjaTf9/G6B/Av2kdUuZcokcaGN+x130BX0E+s7q7sOIGd5aWYfT0Iah+gmebUcpLmLx3HzGYNhVvDg4hZmYgSCKj7xVh9F23JWC7CgW21IAootU3JlYeSDm4D6W8BIBoXYh4d+9UvDQvk8nboyBJqLXVdtPbF5CXFwGghU8Bif0QqK1JBsR07m/YysMfDzNWUYk5EkHKygBAKSu2m95+GZVy5gFg9A8k2m/lIqSmYFz7i0enz6GF2zFv3GRiz3cEf21Ays1O9n3iebrY/5FZ1ovbL9N3GtgWMG+NAODLX5BoDw5hjU/gy3uHlH27UKsr8S18m9Qf9qOFwpg3byX7Dg3bTW9fQL/YBYBaUwmAFdOJhlqSAYpMWusJ3vh6B+l/tiNlZWAORwCIXbhkN70DZXRRXqKMGiZ3Pywn3t2L4FcI/taEsqL02TJ6YxAxOwtBFBldXDi1d6aLtJvAt3YGmPxnFHHObOSPPkBZU0G88wrmcIRHrWcw+gcQ5BlYDx5iXO0hduZ3fEveRwymET3SgNbcZmvy4NRRQpZJ/+MX5NJCLF1HO96EFj6VPEoU5KNu/BR122cIsozecZm7q6ogHn89BCAhkfrz9wS++gIk6flBpkm0LsT47v2OTB5ewbWK792FqLXVKGXFTx2nYxcuoYXCtr/5f+PdC7mNJ+A2noDbeAIe/3ceA72FH/P5EKoAAAAAAElFTkSuQmCC",TR:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAACt0lEQVRYhe2YT0gUURzHP7O7s6uu+YfVzLLA1rTFooIgSDJMwiIPQbeklKxjBKFQVpYpiEgH6VzYwTzawYuQYgpCgWRaYVZardoflVxD3XF2dzooi0vbOuuuzaH5nN57vPd+3y+/92Z+PNDRFsEZl6ZoLSISDFoLiBTdgNboBrRGN6A1pvUsEnMdWMtKsBQcwbRjOwCeL06krh7mm1uQ3w5HVWQowvqRCRYziQ13iS8/D4aV5CkK8qvXyO9GABCzs5Ce9+O6fhtlSd4Q0atRnQHBYiblSSuW/Dz/2GJbO65btXjGPgduas9kU+UVfjU2bbgJ1RlIbmrAerHU35+ra2Su/l7INTFFhbg7OiNTuAaqLrGY68B64Zy/v9jWvqZ4AHdHJ8aMrQBYDh9ap8TQqDJgLSsJOPOu6jrVARS3BEDS/Ua/GcEahzF9S5hSg6PqDliO5fvbSwNDeEY/qQ7gm54BwJCchK3lAd6JSURHDj8KToWn9C+oMmDK2OZve95/UL25ITmJ2OITxJ4uxphiw5i2GfbvZerkGXyzrvDVBouhbtrqey5EJXC0UPUVSuvvQdydDYA8MMT3vONhB0ofHcTrnAg4QtHIgqojJHU+8xsQ9+3BZM/E83FMVQBDqg3f1Ay+n7PMlJTjHZ9EsMZhSEiAKBhQdYTmm1vA613uCAKJtTdVBxDMFgBmL1fiHZ8EQJlfwPv1W5hSg2O8KsbfWWuSb2oaQ2oq5oMHAJazIYDU2xdyXUxRIfLLQQC8zonI1QZBdTXqulaN1N3r7ydUVWBrfYgpa+cfc0277CTcqEDq6omOyhCEV8yZRRLra4i/VApG4/KgoiAPvUEeHgEExGw7Ut8LXFU1KPLGF3PrelYRHTlYS89iKTwaUE67n3az8Ojxipl/g/4upDW6Aa3RDWiNbkDnf+c3FYXX7pwB7v0AAAAASUVORK5CYII=",TW:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAABy0lEQVRYhe2WP0sjQRiHn/0TIXBuY2GTA1nhsBEk11kId8Qyn8AqjShnaSDiB7DQ9ixECKKfIGnSHTYHglytgrthq7iKkvFIcDXZqy4oEh2EzcS7ecqZZeb37Mu8M6BRiwHf4yQ36PItyeUxE119AEgJWJYBgOs6uK7zZEw1UgLr659JpUzm5z+Sy2WwLIPV1Zmks0lhy3w0OjrCzs4XfL+JYRjs7n7l6qqddDYp+grYtsnaWhbHGSEIfjM+nmZlZRqAWi0gCG7Z3JxFiIiNjV88PHQHFvoxL3ahVMpke3uOdNpmYeHTk7mDgzOiqMPS0iH39/3DK+tCrutQKEzh+7fk8xPP5vP5Cc7PBYXCVO9gq+DfbaOeJyiXT3Bdh2q1/my+UvGZnHQol0/wPJFkxhfpK2DbJqVSlpubO46OLtjfPyUM24Rhm729U46PQ66v7yiVsti2ukJKPSW2tmYZG0tTrwviOCaT+UCzGVEs/nx1g6F4SggRsbj4g0ajRaPRYnn5kMvL4bgHpCpgWQadTtzrNp4nemOvkXQFpG7iv0EfH1aZ8IPg3bdRowvD8SvfyLuvgBZQjRZQjRZQjRZQjRZQjRZQjRbQ/O/8Ad1dlScRDb9lAAAAAElFTkSuQmCC",UA:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAATUlEQVRYhe3XMQGAMBAEwQ8mkYoU5AQRKaZgR8FteTOx1tzP1iNOXHrAqQK0ArQCtAK0ArQCtAK0td/pD0gFaAVoBWgFaAVoBWgF5O8+aE4FIZp93sIAAAAASUVORK5CYII=",US:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAD7UlEQVRYhe2V3U+TZxjGf4/0bfEtpRUGtWDLqDqiotOxKdAC4ubmHMvkgMwtYdGZaIwGs4/sT9iR7miOuMSNxGwaPGAfZtPpRMz8WBYGspYdGKEtYvmwKF2pvH2lzw4cBztbAmnTrL/z68515b6v3JAlS5aMRrxT1Tq4WMPqY8G+4kQ8tljz/guGgFq4Zu+7Ozj99c/E4xotLQ1cv+5ndPQ+1dVrAbh5c5DS0qeorV3H2bM9qKqJt95+kS+/OA/AvD4ZG1mDSKV9EF5PmywpKSQajeN0FTMWniKZTOJy2QkGxwEoK7MTCk2wZIlguaOAkZFJ8i1L/zUoHJ7i4711uJdbUxrAABCJRMnPV7FZzQzduYeuz+FyFTM4GADA5SrG7w+gKDnYrGbuTz4kEolSVmYHIBgcR0pJkWczJRXOlAYQ9XVH5Hvvt/DZ8W959EijtXU71675GBoK07D1WQB6rtzC7Xbg8VRy6tRFli41cejwG3xy7CwA8/r9BXFWmGRqA3g9bVIIQWFhPs9VrebiT70YjQpNTVvo6roGQHOzh3PnfiWR0Nn+chW/994mEomyrvJpBAKfbxiA1slbLNdT2uEnG3C6inn4IIaq5qIoOYyPP8TpLGJq6i8ACgosjIxMYrfb0PU54o80bDYzM7FZpIQ8Sy6jd+9z9KNdrHIVpTSAIZmUeD3r6ey8wszMLI2NG5mbSxIIjFFZWQ6AzzeM3b6Migon3d39CCFoeq2a06cvA7Bjxwt0dl4hb2U51lR3wOtpkwBut4P6+g10dFxAVU0cOryLY0ef3PgHH7Zw/NNviMc19ux5hatXBxgaCrO1cSMC6O7uB2B/TpgSkUhtgDrvEblz5xYuX+5D03TqGzbg+2OY6ekYq1
2164avQAC3b9/Fas2jcn05V3sGMJkUtm3bxPnzvwFPNnDpUi9vjvamvAMGKSWh0ASzswmWLcsjGBhD03QsFpWpSBQAi0VF03SCgTFsNjMPHsQIhSZQlBwAQqEJEonH1H7VzjOrSlIbAMDvH6bc7WDTxpV0df1Cbq6R1taXOHHiHAAHDjTR0XGBYHCc5mYvff138PuHqalZB8CNG36klBjyzCjW/JQGEHXeI/Lgwdc5efJHNE1n9+5GenoGCIcj1NSs/cfgIA5HIQ0NGzhzphuTSWHfvldpb/8egHl9Ok5IeD1t0mzOJR7XkFJiNCpIKdH1xxiNCgCJhI6iGBBCkEjoCCFQVRMzM7MAzOvT8geklKl9nYuMQZ+OptvDghDfuZ/P7A2oztJ0e1gQmd+Bad+f6fawIDK/A0Wezen2sCAyvwP3friUbg8LIvM7gOTzdJvIkiXL/5i/AX+CliGg//NrAAAAAElFTkSuQmCC",UY:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAADBElEQVRYhe2XW2wMURiAv2m33dXq6kU1Zl3bIr1IS4n7PfUghETwIohE4kFEwgNeJB4Qgj71QcIDFbdECHErIqtJRYuqVds2qVbXttUL292Zvc6MJxusRqTRMdLvdc45+f6c///nPzCMvgiapml6SwyGOL0FBsuAAYQDMgCf3tegqSoAAckzNFZ/gGmgD8+u7GHR1jO01V7EYjHz6s5xCkv3YkmeEbPW3ePnwt3Wv+k5IDEBNNrPMXn2OkL9bbhqT/LZ9YaQtx6Pq4qMCRV0Nj5BVTXEvGXRPW2dMvvL64dU/BsxRSx96aDy9HLyFm/EaS9D8o0iJy+JoF8hSVxFv7uOZbueIAhCdE+1o5f5Ox4OuTx8VwMByUPDo9MocitTFm6h/v5JzIkRlHAPYfkj7S0+JNcVMnNXcO/UEl7eOqKL8M/8cAOOeydwOS4j9zWhaVayc3zkFiQSiUBrUwinI0SmmErJpvOkTSiNHhIIKbi7/foG0NlcTee7mxBx4+uoRo10kTc9EVWDoF/FbBG4cSnIaHEc6eOmkWYrYsqCnSSnibqIfyNaxFk5c4iPN9HRXInP34C3u495i+NpaQ6RaI5DVQQKi+MYJY7FNmMzCdYi3eXhpxRSlTBvrq/ntd1O9lSIBBRy8xMIhwU+vA8hBWyYBC/BiBVx+gZK1h4GoNcT4vGLLn0DCAdlnl/bh3lkKlm2MdgrDjEixUrmaA/t7clYrTKqYqJobTkTSzbhbqxCnLYQ+Ee6UII5iQWby8meuZ66BxUs3X4WVeknKT2frIn5yFIc87dd4u3jMoJSX1Reb2JGCbm/j9UHa0hOH0OqOBNLRjFjC1Yxa81unE8vsnL3QzwdTXq4/pIBp1FHZRkpmZPwdr3FVriONFsBdbePUrz6QMxayR/B2eb967K/4rfjtLe3nZSM8QBomvbDH/hfwPDvAdML52e9HQaFwNzLhr6B//dFZhSEq48+GDqFDN+FDJ9CppaPPr0dBsVwG9UbwwcgHDvfYOgUGm6jemP4AIbRm6/6BEMU95x97QAAAABJRU5ErkJggg==",VN:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAIAAABAJy5dAAAABmJLR0QA/wD/AP+gvaeTAAAB0klEQVRYhe2WPUvDUBSG35u0Tb9MG4q0qTiKuugPEEWtKCIqgoijooOjgouLu6DOLu7OggoO/gh1UrAVwe8qmn6RNr0OrQpWDLm5RZG80+Xcw8vDuck5h5y1NOMvSfhtgK9ygMzkAJnJATITHyBX1HBFDS5WfICUeS08p3Gx4gMUSOSDiTwXK5d9C+Kj7qYSAMFHy3li041DhULTGRCAQJ7K2nfjACSP56qHiYx9N7tARKKeVr1y9rQWiZfaNbSwfgiIracbhnMgAAUASgkhFOJnCjWAShCopGkH/tvlCMr1AAIABAfzsY00kcwrQYvkbkXRdgOW/C0/WebQd9EVLxx7fk7Tz93J7rhVGhYgAOVX4Woy+rgWxrdlonjaki9HYsYTizn7R/283VA4+aZOhVNPejPEbGvjLxMhtRdrw1JbkYi14foDBQdyxP3+ZgaoUe3RxE0DA7lfAFJmq22wdO1K9seTPaqeqg4iZYa9Q7ICCZA6dACZPX8yoZZuRONBvBxSX3aCAKRO3YYxk+TRLChuFyM3SxF8LEIU96vK9UIjypDHGOcaI5AQoKleVdv3115lj7ypPlXwM84Qy5263vqnOzVHOUBmcoDM5ACZ6c8BvQEgWYMeEe8fGQAAAABJRU5ErkJggg==",ZA:"iVBORw0KGgoAAAANSUhEUgAAADAAAAAkCAYAAADPRbkKAAAABmJLR0QA/wD/AP+gvaeTAAAC9ElEQVRYhe2YS0hUYRTHf9d7bRwfFJbvMQ0UF1pUioI4IFgLI3qBm2ihgtsog2pTjblIyFq1KSSnB7WMVkVvjDTEVCy1KLJMLCp8zCsdnfu1mhjn4UzOU/C3u5eP757/+Z/vnG8G1oguEqdqhftLJU7mhP4QLbuPoFHiEXNzzBivYbp7E1Q1GnH6RKaq0OD+UhWCV19HuDfcQ3luETmpGWjLKtCWljM31I9qMkUhVO94FeDkl3WWzr7HLDgWqcovRpOVTcregwjVwfzwEAgP8yKOrOgLDCqSzwWqEHSNveP+SA8VuUVkp6bHlBvywDEMveZEvtvjl1340zLD9b5H2Ozz6LeUoMnKIXnPPoTFjP3DaITC9UQSD3ViQYXLE2mc/ZyBXfh2w0lxRh7GumbKdIUAzA8N8vvCORYnvoU7Xg9kfYnGUJClULXexv5NJgJxw3k2YsEN+dZTm2FyykH1tgQ2JzlozJwiSRF0zSTh8HM2lnSqjZloK/VoSysiejZkwPDm4wJ3ntsoyV9HYXbwbkSyU8mAAWDWKrj9zEZI3Ijg3JAAjxTlpct0HE9l1w4NAEOWBBre6+g3a/1u6D7FVZuVWWMHiz8mQx48+BAAIEnQVJtEe9MGUrQSwXaqcOFTgBN3N/rNWupHdby1JvjdXImTOV1dx4HiypAE6w2/AsDTDbuQaB1Lp208jcUA3AgnAQlwEszZCBf/ulAgeOtUDVnTIKDblMhyd6pwERfsBpIQJCtq8ButEOV/FnsrofpRHQOW6JVQQAJi+RD7FRDrbdSngGAHWUlGHp0RGGReBQRT6+5XCbPFTuulbr6Mz4Y2cuf3XB9CnfWXrydoPPqAT2PTYQkeXASEMuu2Pwucb+/m4pVeVDW812llNWbdFelJW5qo2R6aWj/Z8oKrNwYj+m/Lin7URzvrriirMetLYirtKwhomm7NzMdY18zOnAIgull3RfEXvHOanqk5zDpZiWiHCYRlrxKxVOu+8Cogmn19jdXGX6jH7NbSLYD+AAAAAElFTkSuQmCC"};function s1(t){if(!t)return null;const n=x3[t.toUpperCase()];return n?"data:image/png;base64,"+n:null}function Gh(t){let n=2166136261;for(let r=0;r<t.length;r++)n^=t.charCodeAt(r),n=Math.imul(n,16777619);return(n>>>0)/4294967295}function L3(t,n){const[r,i]=m.useState(1);return m.useEffect(()=>{let s=!0,a=0;const o=()=>{var d;if(!s)return;const l=(d=t.current)==null?void 0:d.getScreenCTM();l&&l.a>0?i(l.a):a=requestAnimationFrame(o)};o();const c=new ResizeObserver(()=>o());return t.current&&c.observe(t.current),window.addEventListener("resize",o),()=>{s=!1,cancelAnimationFrame(a),c.disconnect(),window.removeEventListener("resize",o)}},[t,n]),r}function v3(){const{st:t,dispatch:n,scoped:r,connected:i,markRow:s,markedId:a,byId:o,lang:c,t:l}=it(),d=m.useRef(null),p=m.useRef(null),u=Mp.find(j=>j.key===t.continent),g=L3(d,t.continent),[f,L]=m.useState(new Map),[v,y]=m.useState(null);m.useEffect(()=>{const j=d.current;if(!j)return;const O=new Map;j.querySelectorAll("path[data-i2]").forEach(k=>{const _=k.dataset.i2;if(_)try{const N=k.getBBox();N.width>0&&O.set(_,{x:N.x,y:N.y,w:N.width,h:N.height})}catch{}}),L(O)},[t.continent,g]);const h=m.useMemo(()=>r.filter(j=>j.cc),[r]),b=m.useMemo(()=>{const j=new Map;return h.forEach(O=>j.set(O.cc,(j.get(O.cc)||0)+1)),j},[h]),x=m.useMemo(()=>h.map(j=>{const O=j.cc?f.get(j.cc):void 0;if(!O)return null;
2164const k=Gh(j.name||j.id||""),_=Gh((j.id||j.name||"")+"·y"),N=(k-.5)*Math.min(O.w*.55,60),I=(_-.5)*Math.min(O.h*.55,60);return{d:j,x:O.x+O.w/2+N,y:O.y+O.h/2+I}}).filter(j=>!!j),[h,f]),A=j=>g>0?j/g:j,w=m.useMemo(()=>Bo.map((j,O)=>({...j,n:r.filter(k=>vd(k)===O).length})),[r]),S=a?o.get(a):null,E=S?x.find(j=>j.d.id===S.id):null;return e.jsxs("div",{className:"mapzone",ref:p,children:[e.jsxs("svg",{ref:d,viewBox:u.viewBox,preserveAspectRatio:"xMidYMid meet",role:"img","aria-label":c==="fr"?u.fr:u.en,onMouseLeave:()=>{y(null),s(null)},children:[e.jsx("g",{children:u.countries.map((j,O)=>e.jsx("g",{className:"ct"+(j.i2&&b.get(j.i2)?"":" empty"),children:e.jsx("path",{d:j.d,"data-i2":j.i2||void 0})},O))}),e.jsx("g",{children:x.map(j=>{const O=Bo[vd(j.d)],k=!!Rt(j.d),_=i&&Lt(j.d);return e.jsxs("g",{className:"co"+(_?" done":""),onMouseEnter:N=>{var K,pe;const I=(K=p.current)==null?void 0:K.getBoundingClientRect(),ce=(pe=d.current)==null?void 0:pe.createSVGPoint();if(ce&&d.current&&I){ce.x=j.x,ce.y=j.y;const ee=ce.matrixTransform(d.current.getScreenCTM());y({x:ee.x-I.left,y:ee.y-I.top,label:j.d.name+" · "+(Dn(j.d.cc,c)||j.d.countryLabel||"")})}s(j.d.id)},onMouseLeave:()=>{y(null),s(null)},onClick:()=>n({type:"popup",id:j.d.id}),children:[e.jsx("circle",{className:"h",cx:j.x,cy:j.y,r:A(Math.max(11,O.px+7))}),e.jsx("circle",{className:"v",cx:j.x,cy:j.y,r:A(O.px),fill:O.c,stroke:k?"#DC2626":"#ffffff",strokeWidth:A(k?2.2:1.3)})]},j.d.id||j.d.name)})}),E&&e.jsx("circle",{className:"ring on",cx:E.x,cy:E.y,r:A(13),fill:"none",stroke:"#0F172A",strokeWidth:A(2)})]}),e.jsx("div",{className:"hov"+(v?" on":""),style:v?{left:v.x,top:v.y}:void 0,children:v==null?void 0:v.label}),e.jsx("div",{className:"legend",children:w.map((j,O)=>e.jsxs("span",{children:[e.jsx("i",{style:{"--c":j.c}}),c==="fr"?j.fr:j.en," ",e.jsx("b",{children:j.n})]},O))}),r.some(j=>!j.cc)&&e.jsx("div",{className:"legend",style:{left:"auto",right:10},children:e.jsxs("span",{children:["ð ",l.notLocated," ",e.jsx("b",{children:r.filter(j=>!j.cc).length})]})})]})}const b3={exa_similar:{fr:"Chasseur de sosies",en:"Lookalike hunter"},websets:{fr:"Jumeaux de vos meilleures cibles",en:"Twins of your best targets"},exa_semantic:{fr:"Lecture du web en langage naturel",en:"Plain-language web search"},hunter:{fr:"Dénicheur hors radar",en:"Off-radar finder"},backfill:{fr:"Rattrapage des mailles du filet",en:"Safety-net sweep"},rss:{fr:"Lecteur de presse sectorielle",en:"Trade-press reader"},editorial:{fr:"Oreille des médias experts",en:"Expert-media ear"},daily_news:{fr:"Veille du jour sur votre thèse",en:"Daily thesis watch"},google_news:{fr:"Balayage de lâactualité mondiale",en:"World-news sweep"},google_alerts:{fr:"Sentinelle mots-clés",en:"Keyword sentinel"},linkedin_posts:{fr:"Ãcoute des dirigeants qui sâexpriment",en:"Founder-voice listener"},hackernews:{fr:"Pouls des communautés tech",en:"Tech-community pulse"},github:{fr:"Détecteur dâactivité développeurs",en:"Developer-activity detector"},fundraising:{fr:"Radar levées de fonds",en:"Fresh-funding radar"},crunchbase_search:{fr:"Sonde de la base mondiale des startups",en:"Global startup probe"},linkedin_jobs:{fr:"Radar recrutement",en:"Hiring radar"},departs:{fr:"Guetteur de départs chez les concurrents",en:"Competitor-exodus scout"},pappers_fr:{fr:"Åil sur les registres français",en:"French-registry eye"},bodacc:{fr:"Vigie des cessions & liquidations",en:"Business-sale lookout"},local:{fr:"Arpenteur ville par ville",en:"City-by-city walker"},manual:{fr:"Vos propres pistes",en:"Your own leads"},make:{fr:"Moteurs cousus main pour vous",en:"Hand-built engines for you"},unknown:{fr:"Pipeline interne Stan",en:"Stanâs internal pipeline"},ma:{fr:"Flux des deals signés",en:"Signed-deals stream"},memo:{fr:"Déjà analysées par Proplace",en:"Already analysed by Proplace"},note:{fr:"Sociétés issues de nos recherches",en:"From our research notes"},media:{fr:"Actualités",en:"News"},tribunes:{fr:"Analyses & tribunes",en:"Analysis & op-eds"},listes:{fr:"Listes & classements",en:"Lists & rankings"},evenements:{fr:"Ãvénements",en:"Events"},partenariats:{fr:"Partenariats & contrats",en:"Partnerships & contracts"},produits:{fr:"Produits & lancements",en:"Products & launches"},regul:{fr:"Réglementaire & litiges",en:"Regulation & disputes"},marche:{fr:"Bourse & marchés",en:"Markets & listings"},edito:{fr:"Edito du jour",en:"Today's editorial"},nominations:{fr:"Nominations & prises de poste",en:"Appointments & new roles"},recrutements:{fr:"Sociétés qui recrutent",en:"Companies hiring"}};function Ln(t,n){const r=Ii(t),i=b3[r];return i?i[n]:ud(t,n)}function bd(t,n){const r=new Map(xb.map((i,s)=>[i,s]));return[...t].sort((i,s)=>{const a=r.get(Js(i))??99,o=r.get(Js(s))??99;return a!==o?a-o:Ln(i,n).localeCompare(Ln(s,n))})}function y3(){const{st:t,dispatch:n,dossiers:r,t:i,lang:s,connected:a,contName:o}=it(),c=t.filters,l=m.useMemo(()=>r.filter(L=>L.continent===t.continent),[r,t.continent]),d=L=>l.filter(v=>L!=="country"&&c.country.length&&!c.country.includes(v.cc||"")?!1:Rp(v,c,a,L==="country"?void 0:L)),p=m.useMemo(()=>{const L=d("win"),v=y=>L.filter(h=>(h.date?Math.max(0,Math.floor((Date.now()-Date.parse(h.date))/864e5)):9999)<=y).length;return[v(0),v(7),v(30),L.length]},[l,c,a]),u=m.useMemo(()=>
2164{if(!a)return null;const L=d("status"),v={all:L.length,todo:0,retenu:0,pending:0,ecarte:0};return L.forEach(y=>{v[Yt(y)]+=1}),v},[l,c,a]),g=c.sector.length+c.country.length+c.engine.length+c.stage.length+(c.signalOnly?1:0)+(c.win!=="all"?1:0)+(a&&c.status!=="all"?1:0),f=(L,v,y,h="fbtn")=>e.jsxs("button",{type:"button",className:h,"aria-expanded":t.openFacet===L,onClick:()=>n({type:"openFacet",facet:L}),children:[v,e.jsx("span",{className:"sp"}),y>0&&e.jsx("span",{className:"n",children:y}),e.jsx("span",{className:"cv",children:"â¸"})]});return e.jsxs(e.Fragment,{children:[e.jsxs("aside",{className:"frail",children:[e.jsx("span",{className:"cap",children:i.period}),e.jsx("div",{className:"dates",children:["1","7","30","all"].map((L,v)=>e.jsxs("button",{type:"button","aria-pressed":c.win===L,onClick:()=>n({type:"filters",patch:{win:L}}),children:[e.jsx("span",{className:"rd"}),i.dates[v],e.jsx("span",{className:"dn",children:p[v]})]},L))}),a&&u&&e.jsxs("div",{className:"statusf",children:[e.jsx("span",{className:"cap",children:i.statusCap}),[["all",i.statusAll],["todo",i.statusTodo],["retenu",i.statusKeep],["pending",i.statusPending],["ecarte",i.statusDrop]].map(([L,v])=>e.jsxs("button",{type:"button","aria-pressed":c.status===L,onClick:()=>n({type:"filters",patch:{status:L}}),children:[v,e.jsx("b",{children:u[L]??0})]},L))]}),e.jsx("span",{className:"cap",children:i.refine}),e.jsxs("div",{className:"fgrid",children:[e.jsxs("button",{type:"button",className:"fbtn fsig","aria-expanded":t.openFacet==="sig",onClick:()=>n({type:"openFacet",facet:"sig"}),children:[i.fSignal,e.jsx("span",{className:"sp"}),c.signalOnly&&e.jsx("span",{className:"n",children:c.signalEngines.length||"â"}),e.jsx("span",{className:"cv",children:"â¸"})]}),f("sec",i.fSector,c.sector.length),f("pay",i.fCountry,c.country.length),f("det",i.fEngine,c.engine.length),f("sta",i.fStage,c.stage.length)]}),e.jsx("span",{className:"grow"}),e.jsxs("div",{className:"frow",children:[g>0&&e.jsxs("button",{type:"button",className:"resetbtn on",title:i.clearTitle(l.length,o),onClick:()=>n({type:"reset"}),children:[e.jsx("span",{className:"rot",children:"âº"}),e.jsx("span",{children:i.clear(g)})]}),e.jsx("button",{type:"button",className:"alertbtn",onClick:()=>n({type:"modal",modal:"alert"}),children:i.alertBtn})]})]}),t.openFacet&&e.jsx(j3,{poolFor:d})]})}function j3({poolFor:t}){const{st:n,dispatch:r,t:i,lang:s}=it(),a=n.filters,o=n.openFacet,{title:c,cols:l,options:d}=m.useMemo(()=>{if(o==="sig"){const L=t("signal").filter(h=>Rt(h)),v=new Map;L.forEach(h=>{const b=h.engine||"";v.set(b,(v.get(b)||0)+1)});const y=[{v:"*",label:i.fpSigAll,n:L.length,html:!0,on:a.signalOnly&&!a.signalEngines.length},...bd([...v.keys()],s).map(h=>({v:h,label:zr(h)+" "+Ln(h,s),n:v.get(h)||0,html:!1,on:a.signalOnly&&a.signalEngines.includes(h)}))];return{title:i.fpSigTitle,cols:2,options:y}}if(o==="sec"){const L=t("sector"),v=new Map;return L.forEach(y=>{y.sector&&v.set(y.sector,(v.get(y.sector)||0)+1)}),{title:i.fSector.toUpperCase(),cols:3,options:[...v.entries()].sort((y,h)=>h[1]-y[1]).map(([y,h])=>({v:y,label:y,n:h,html:!1,on:a.sector.includes(y)}))}}if(o==="pay"){const L=t("country"),v=new Map;return L.forEach(y=>{y.cc&&v.set(y.cc,(v.get(y.cc)||0)+1)}),{title:i.fCountry.toUpperCase(),cols:3,options:[...v.entries()].sort((y,h)=>h[1]-y[1]).map(([y,h])=>({v:y,label:Dn(y,s)||y,n:h,html:!1,on:a.country.includes(y)}))}}if(o==="det"){const L=t("engine"),v=new Map;return L.forEach(y=>{y.engine&&v.set(y.engine,(v.get(y.engine)||0)+1)}),{title:i.fEngine.toUpperCase(),cols:2,options:bd([...v.keys()],s).map(y=>({v:y,label:zr(y)+" "+Ln(y,s)+' <span style="color:var(--dim);font-size:10px">· '+fb(Js(y),s)+"</span>",n:v.get(y)||0,html:!0,on:a.engine.includes(y)}))}}const g=t("stage"),f=new Map;return g.forEach(L=>{L.stage&&f.set(L.stage,(f.get(L.stage)||0)+1)}),{title:i.fStage.toUpperCase(),cols:2,options:[...f.entries()].sort((L,v)=>v[1]-L[1]).map(([L,v])=>({v:L,label:L,n:v,html:!1,on:a.stage.includes(L)}))}},[o,n,s]),p=g=>{if(o==="sig"){if(g==="*")r({type:"filters",patch:{signalOnly:!(a.signalOnly&&!a.signalEngines.length),signalEngines:[]}});else{const L=a.signalEngines.includes(g)?a.signalEngines.filter(v=>v!==g):[...a.signalEngines,g];r({type:"filters",patch:{signalOnly:!0,signalEngines:L}})}return}r({type:"toggleFacet",facet:o==="sec"?"sector":o==="pay"?"country":o==="det"?"engine":"stage",value:g})},u=()=>{r(o==="sig"?{type:"filters",patch:{signalOnly:!1,signalEngines:[]}}:{type:"clearFacet",facet:o==="sec"?"sector":o==="pay"?"country":o==="det"?"engine":"stage"})};return e.jsxs("div",{className:"fpanel on",children:[e.jsxs("div",{className:"ph",children:[e.jsx("b",{children:c}),e.jsx("span",{className:"sp"}),e.jsx("button",{type:"button",onClick:u,children:i.fpNone}),e.jsx("button",{type:"button",onClick:()=>r({type:"openFacet",facet:null}),children:i.fpClose})]}),e.jsx("div",{className:"fcols"+(l===2?" two":""),children:d.map(g=>e.jsxs("button",{type:"button",className:"opt","aria-pressed":g.on,onClick:()=>p(g.v),children:[e.jsx("span",{className:"bx"}),g.html?e.jsx("span",{className:"l",dangerouslySetInnerHTML:{__html:g.label}}):e.jsx("span",{className:"l",children:g.label}),e.jsx("span",{className:"n",children:g.n})]},g.v))}),e.jsxs("div",{className:"pf",children:[e.jsx("span",{className:"t",children:i.alertReady}),e.jsx("button",{type:"button",className:"alertbtn",onClick:()=>r({type:"modal",modal:"alert"}),children:i.alertCreate})]})]})}const Wh=/^(https?:\/\/)?([\w-]+\.)+[a-z]{2,}(\/\S*)?$/i;function w3({cards:t}){const{t:n,connected:r,token:i,askEvaluate:s,sessTally:a,dispatch:o,evalBusy:c}=it(),[l,d]=m.useState(""),[p,u]=m.useState(!1),[g,f]=m.useState(""),[L,v]=m.useState(!1),[y,h]=m.useState(""),[b,x]=m.useState([]),A=m.useRef(!1),w=l.trim()?Wh.test(l.trim())?n.evalUrl:n.evalName:n.evalWaiting,S=m.useMemo(()=>g.split(` 2165`).map(k=>
2165k.trim()).filter(Boolean).slice(0,15),[g]),E=b.length?b:t,j=()=>{const k=l.trim();k&&(s(null,k),d(""))},O=async()=>{if(!r){s(null,S[0]||"");return}if(!S.length||L)return;v(!0),A.current=!1;const k=[];for(let _=0;_<S.length&&!A.current;_++){h(n.evaluating(_+1,S.length,S[_]));const N=await Ix(i,S[_],"atelier");if(k.unshift({name:N.company||S[_],verdict:N.verdict,reason:N.reason||"",remaining:N.remaining??null}),x([...k]),N.verdict==="quota"){k.unshift({name:"",verdict:"quota",reason:n.quota(S.length-_-1),remaining:0}),x([...k]);break}}h(""),f(""),v(!1)};return e.jsxs("div",{className:"demand",children:[e.jsxs("div",{className:"drow",children:[e.jsxs("span",{className:"dfield",children:[e.jsx("input",{value:l,placeholder:n.evalPh,autoComplete:"off",maxLength:200,onChange:k=>d(k.target.value),onKeyDown:k=>{k.key==="Enter"&&j()}}),e.jsx("span",{className:"detect"+(Wh.test(l.trim())?" url":""),children:w})]}),e.jsxs("button",{type:"button",className:"evalbtn"+(c?" loading":""),disabled:c,onClick:j,children:[e.jsx("span",{className:"fill"}),n.evalGo]}),e.jsx("button",{type:"button",className:"dmulti",onClick:()=>u(!p),children:n.evalMulti})]}),p&&e.jsxs("div",{className:"bulk on",children:[e.jsx("textarea",{value:g,placeholder:n.bulkPh,onChange:k=>f(k.target.value.split(` 2166`).slice(0,15).join(` 2167`))}),e.jsxs("div",{className:"side",children:[e.jsxs("button",{type:"button",className:"evalbtn"+(L?" loading":""),style:{justifyContent:"center"},disabled:L||!S.length,onClick:()=>{O()},children:[e.jsx("span",{className:"fill"}),L&&y?y:n.evalList]}),e.jsx("span",{className:"hint",children:n.bulkCount(S.length)})]})]}),E.slice(0,1).map((k,_)=>{const N=k.verdict==="kept",I=k.verdict==="quota",ce=N?"var(--brand)":I?"var(--bolt)":"var(--red)",K=N?"var(--brand-l)":I?"#FEF3C7":"#FEF2F2";return e.jsxs("div",{className:"result on",style:{"--c":ce,"--bgc":K},children:[e.jsx("span",{className:"vv",children:e.jsx("span",{className:"vp",children:N?"â "+n.kept:I?"â³":"â "+n.dropped})}),k.name&&e.jsx("span",{className:"rn",children:k.name}),e.jsx("span",{className:"rr",children:k.reason?e.jsxs(e.Fragment,{children:[e.jsx("b",{children:n.why})," ",k.reason]}):null}),!I&&e.jsx("button",{type:"button",className:"go",onClick:()=>o({type:"modal",modal:"space"}),children:n.seeSpace(N?n.statusKeep.replace("â ",""):n.statusDrop.replace("â ",""))})]},_)}),r&&(a.kept+a.dropped>0||E.length>0)&&e.jsxs("div",{className:"tally",children:[e.jsx("span",{dangerouslySetInnerHTML:{__html:n.session(a.kept,a.dropped)}})," ","·"," ",e.jsx("a",{onClick:()=>o({type:"modal",modal:"space"}),children:n.seeMySpace})]})]})}function k3(){const{st:t,dispatch:n,base:r,t:i,lang:s,connected:a,contName:o,askEvaluate:c,markRow:l,markedId:d,byId:p}=it(),u=m.useMemo(()=>Pp(r,t.sort),[r,t.sort]),g=m.useMemo(()=>u.filter(S=>!(a&&Lt(S))),[u,a]),f=u.length-g.length,L=a&&(t.filters.status==="retenu"||t.filters.status==="ecarte"||t.filters.status==="pending"),v=u,y=m.useMemo(()=>(a?u.filter(S=>Yt(S)==="todo"):u).map(S=>S.id),[u,a]),h=m.useMemo(()=>u.filter(S=>Rt(S)&&!(a&&Lt(S))).length,[u,a]),b=t.filters.win==="1"?0:t.filters.win==="7"?1:t.filters.win==="30"?2:3,x=L?t.filters.status==="retenu"?i.keptByStan:t.filters.status==="ecarte"?i.droppedByStan:i.pendingByStan:i.toSend,A=L?u.length:a?y.length:u.length,w=(S,E,j,O)=>e.jsxs("button",{type:"button","data-s":S,className:j,"aria-sort":t.sort.key===S?t.sort.dir===1?"ascending":"descending":"none",style:O?{justifyContent:"flex-end"}:void 0,onClick:()=>n({type:"sort",key:S}),children:[E,e.jsx("span",{className:"ar",children:t.sort.key===S&&t.sort.dir===1?"â´":"â¾"})]});return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"listhead",children:[e.jsxs("span",{className:"main",children:[e.jsx("b",{children:A})," ",e.jsx("span",{children:x})]}),e.jsx("span",{className:"dot",children:"·"}),e.jsx("span",{className:"ctx",children:t.pileMode?i.pileCtx(u.length,f):i.listCtx(o,i.wins[b],a?f:0)}),!t.pileMode&&e.jsxs("span",{className:"groupbar",style:{marginLeft:"auto",display:"flex",gap:4,alignItems:"center",flex:"none"},children:[e.jsx("span",{className:"gl",style:{fontSize:8,letterSpacing:".16em",color:"var(--dim)"},children:i.groupBy}),e.jsx("button",{type:"button",className:"abtn","aria-pressed":t.groupBy==="engine",style:t.groupBy==="engine"?Qh:void 0,onClick:()=>n({type:"groupBy",groupBy:"engine"}),children:i.gEngine}),e.jsx("button",{type:"button",className:"abtn","aria-pressed":t.groupBy==="none",style:t.groupBy==="none"?Qh:void 0,onClick:()=>n({type:"groupBy",groupBy:"none"}),children:i.gNone})]}),t.pileMode&&e.jsx("button",{type:"button",className:"exitpile",onClick:()=>n({type:"pile",on:!1}),children:i.exitPile}),y.length>0&&!L&&e.jsxs("button",{type:"button",className:"chain",onClick:()=>n({type:"chainStart",queue:y}),children:[e.jsx("span",{className:"b",children:"â¶"})," ",i.chainN(y.length)]})]}),h>0&&!t.filters.signalOnly&&!t.pileMode&&e.jsxs("div",{className:"sigstrip",children:[e.jsx("span",{className:"t",dangerouslySetInnerHTML:{__html:i.sigStrip(h)}}),e.jsx("span",{className:"s",children:i.sigStripSub}),e.jsx("button",{type:"button",onClick:()=>n({type:"filters",patch:{signalOnly:!0,signalEngines:[]}}),children:i.sigStripGo})]}),e.jsxs("div",{className:"cols",children:[e.jsx("span",{}),w("country",i.colCountry),w("name",i.colName),w("amount",i.colAmount,"h-amt",!0),w("stage",i.colStage,"h-stade"),w("signal",i.colSignal,"h-sig"),e.jsx("span",{})]}),e.jsxs("div",{className:"list",children:[v.length===0&&e.jsx("div",{className:"void",children:L?i.voidStatus:i.void}),v.length>0&&t.groupBy==="engine"&&!t.pileMode?e.jsx(A3,{list:v}):v.length>0&&e.jsx(a1,{list:v,groupKey:"flat"})]}),(d&&p.get(d),null),void 0]})}const Qh={background:"var(--ink)",color:"#fff",borderColor:"var(--ink)"};function A3({list:t}){const{lang:n,t:r,dispatch:i,connected:s}=it(),a=m.useMemo(()=>{const o=new Map;return t.forEach(c=>{const l=c.engine||"unknown",d=o.get(l)||[];d.push(c),o.set(l,d)}),bd([...o.keys()],n).map(c=>
2167({key:c,items:o.get(c)}))},[t,n]);return e.jsx(e.Fragment,{children:a.map(o=>{const c=o.items.filter(l=>!(s&&Lt(l))).length;return e.jsxs(m.Fragment,{children:[e.jsxs("div",{className:"grp-h",children:[e.jsx("span",{className:"ic",children:zr(o.key)}),e.jsxs("span",{children:[e.jsx("span",{className:"t",children:Ln(o.key,n)}),e.jsxs("div",{className:"s",children:[o.items.length," · ",Do(o.key,n)]})]}),c>0&&e.jsxs("button",{type:"button",className:"go",onClick:()=>i({type:"chainStart",queue:o.items.filter(l=>!(s&&Lt(l))).map(l=>l.id)}),children:["â¶ ",r.chain.replace("â© ","")," (",c,")"]})]}),e.jsx(a1,{list:o.items,groupKey:o.key})]},o.key)})})}function a1({list:t,groupKey:n}){const{st:r,dispatch:i,t:s,lang:a}=it(),o=r.shown[n]||po;return e.jsxs(e.Fragment,{children:[t.slice(0,o).map(c=>e.jsx(S3,{d:c},c.id||c.name)),t.length>o&&e.jsx("button",{type:"button",className:"moregrp",onClick:()=>i({type:"more",group:n,by:po}),children:s.more(Math.min(po,t.length-o),t.length-o)}),void 0]})}function S3({d:t}){const{st:n,dispatch:r,t:i,lang:s,connected:a,askEvaluate:o,markRow:c,markedId:l,evalBusy:d}=it(),p=Bo[vd(t)],u=a&&Lt(t),g=u?Yt(t):null,f=Rt(t);return e.jsxs("div",{className:"row"+(l===t.id?" on":""),onMouseEnter:()=>c(t.id),onMouseLeave:()=>c(null),onClick:()=>r({type:"popup",id:t.id}),children:[e.jsx("span",{className:"pt",style:{"--c":p.c}}),e.jsx(l1,{o:t}),e.jsxs("span",{className:"nd",children:[e.jsx("span",{className:"rnm",title:t.name,children:t.name}),e.jsx("span",{className:"rds",title:t.tagline||t.headline||"",children:t.tagline||t.headline||t.reasoning||""})]}),e.jsx("span",{className:"c-amt"+(t.amountEur?"":" none"),children:t.amountEur?Br(t.amountEur,s):"â"}),e.jsx("span",{className:"c-stade",children:(t.stage||"").toUpperCase()}),e.jsx("span",{className:"c-sig",children:f?e.jsxs(e.Fragment,{children:[e.jsx(ml,{o:t}),e.jsx(gl,{o:t,src:!0})]}):e.jsxs("span",{className:"mo",children:[zr(t.engine)," ",Ln(t.engine,s)]})}),e.jsx("span",{onClick:L=>L.stopPropagation(),children:u?e.jsxs("span",{className:"verdict",title:t.reasoning||"",style:{"--c":g==="retenu"?"var(--brand)":g==="pending"?"var(--bolt)":"var(--red)"},children:[g==="retenu"?"â "+i.kept:g==="pending"?"ð "+i.pending:"â "+i.dropped,typeof t.score=="number"&&t.score>0&&e.jsx("b",{children:t.score})]}):e.jsxs("button",{type:"button",className:"rev",disabled:d,onClick:()=>o(t),children:[e.jsx("span",{className:"fill"}),i.evalGo]})}),void 0]})}function E3(){const{st:t,dispatch:n,byId:r,t:i,lang:s,connected:a,askEvaluate:o,doAnalyse:c,doDecide:l,evalBusy:d}=it(),p=t.popupId?r.get(t.popupId):null;if(!p)return null;const u=Rt(p),g=a&&Lt(p),f=g?Yt(p):null;return Vn.createPortal(e.jsxs("div",{className:"atl",children:[e.jsx("style",{children:N3}),e.jsxs("div",{className:"pop on atl-pop-center",onClick:L=>L.stopPropagation(),children:[e.jsxs("div",{className:"ph",children:[e.jsxs("div",{style:{flex:1},children:[e.jsx("h3",{children:p.name}),e.jsx("span",{className:"id",children:i.detected(i.daysAgo(br(p.date)),Ln(p.engine,s))})]}),e.jsx("button",{type:"button",className:"x",onClick:()=>n({type:"popup",id:null}),children:"Ã"})]}),e.jsxs("div",{className:"pb",children:[e.jsxs("div",{className:"tags",children:[p.cc&&e.jsx("span",{className:"hi",children:(Dn(p.cc,s)||p.countryLabel||"").toUpperCase()}),p.sector&&e.jsx("span",{children:p.sector.toUpperCase()}),p.stage&&e.jsx("span",{children:p.stage.toUpperCase()}),typeof p.amountEur=="number"&&p.amountEur>0&&e.jsx("span",{children:Br(p.amountEur,s)})]}),(p.tagline||p.headline)&&e.jsxs("div",{className:"fld",children:[e.jsx("span",{className:"l",children:i.desc}),e.jsx("p",{children:p.tagline||p.headline})]}),e.jsxs("div",{className:"fld",children:[e.jsx("span",{className:"l",children:i.how}),e.jsxs("p",{children:[zr(p.engine)," ",e.jsx("b",{children:Ln(p.engine,s)})," â ",Do(p.engine,s),p.noteTitle&&e.jsxs(e.Fragment,{children:[" · ",p.noteTitle]})]}),u?e.jsxs("p",{style:{marginTop:9},children:[e.jsx(ml,{o:p,lg:!0})," ",e.jsx(gl,{o:p,src:!0}),e.jsxs("span",{style:{display:"block",marginTop:5,fontSize:"11.5px",color:"var(--muted)"},children:[i.signaledOn(n1(u,s))," · ",i.win7(r1(u,s))]})]}):e.jsx("p",{style:{marginTop:5,fontSize:"11.5px",color:"var(--dim)"},children:i.noSignal})]}),(p.reasoning||p.summary)&&e.jsxs("div",{className:"fld",children:[e.jsx("span",{className:"l",children:g?i.verdictCap:i.memo}),e.jsx("p",{className:"memo",children:p.reasoning||""})]}),g&&e.jsxs("div",{className:"fld",children:[e.jsxs("p",{style:{color:f==="retenu"?"var(--brand-d)":f==="pending"?"var(--bolt)":"var(--red)",fontWeight:700},children:[f==="retenu"?"â "+i.kept:f==="pending"?"ð "+i.pending:"â "+i.dropped,typeof p.score=="number"&&p.score>0?" · "+i.score(p.score):""]}),f==="pending"&&e.jsxs("div",{style:{display:"flex",gap:8,marginTop:8,alignItems:"center",flexWrap:"wrap"},children:[e.jsx("span",{style:{fontSize:12,color:"var(--muted)"},children:i.callHint}),e.jsx("button",{type:"button",className:"abtn p",onClick:()=>l(p,!0),children:i.callKeep}),e.jsx("button",{type:"button",className:"abtn",onClick:()=>l(p,!1),children:i.callDrop})]}),f==="retenu"&&!p.memoUrl&&e.jsx("button",{type:"button",className:"abtn p",style:{marginTop:8},onClick:()=>c(p),children:i.analyse}),p.memoUrl&&e.jsx("a",{className:"abtn",style:{display:"inline-block",marginTop:8},href:p.memoUrl,target:"_blank",rel:"noopener noreferrer",children:"ð Mémo â"})]})]}),!g&&e.jsx("div",{className:"pf",children:e.jsxs("button",{type:"button",className:"evalbtn",style:{width:"100%",justifyContent:"center"},disabled:d,onClick:()=>{o(p)},children:[e.jsx("span",{className:"fill"}),i.evalArrow]})})]}),e.jsx("div",{className:"atl-pop-veil",onClick:()=>n({type:"popup",id:null})})]}),document.body)}const N3=` 2168.atl-pop-veil{position:fixed;inset:0;z-index:59;background:rgba(15,23,42,.25)} 2169.atl .pop.atl-pop-center{position:fixed;left:50%;
2169top:50%;transform:translate(-50%,-50%);z-index:60;width:min(400px,calc(100vw - 24px))} 2170`;function C3(){const{st:t,dispatch:n,byId:r,t:i,lang:s,connected:a,askEvaluate:o,evalBusy:c}=it(),l=t.chain.queue.map(g=>r.get(g)).filter(g=>!!g),d=t.chain.idx,p=l[d],u=d>=l.length;return Vn.createPortal(e.jsx("div",{className:"atl",children:e.jsx("div",{className:"modal on",children:e.jsxs("div",{className:"fcard",children:[e.jsxs("div",{className:"fh",children:[e.jsx("span",{className:"c",children:u?i.finished:`${d+1} / ${l.length}`}),e.jsx("span",{className:"p",children:e.jsx("i",{style:{width:(u?100:d/Math.max(1,l.length)*100)+"%"}})}),e.jsx("button",{type:"button",className:"x",onClick:()=>n({type:"modal",modal:null}),children:"Ã"})]}),e.jsx("div",{className:"fb",children:u||!p?e.jsxs("div",{className:"fin",children:[e.jsx("div",{className:"em",children:"ð"}),e.jsx("div",{className:"t",children:i.chainDone}),e.jsx("div",{className:"s",children:i.chainDoneSub(l.length)})]}):e.jsxs(e.Fragment,{children:[e.jsx("h2",{children:p.name}),e.jsx("div",{className:"sub",children:[Dn(p.cc,s)||p.countryLabel,p.sector,p.stage,i.daysAgo(br(p.date))].filter(Boolean).map(g=>String(g).toUpperCase()).join(" · ")}),e.jsxs("div",{className:"tags",children:[e.jsx("span",{className:"hi",children:Ln(p.engine,s).toUpperCase()}),typeof p.amountEur=="number"&&p.amountEur>0&&e.jsx("span",{children:Br(p.amountEur,s)})]}),Rt(p)&&e.jsxs("div",{style:{marginBottom:12},children:[e.jsx(ml,{o:p,lg:!0})," ",e.jsx(gl,{o:p,src:!0})]}),(p.tagline||p.headline)&&e.jsxs("div",{className:"fld",children:[e.jsx("span",{className:"l",children:i.desc}),e.jsx("p",{children:p.tagline||p.headline})]}),p.reasoning&&e.jsxs("div",{className:"fld",children:[e.jsx("span",{className:"l",children:i.memo}),e.jsx("p",{className:"memo",children:p.reasoning})]}),a&&Lt(p)&&e.jsxs("div",{className:"vbox",style:{"--c":Yt(p)==="retenu"?"var(--brand)":Yt(p)==="pending"?"var(--bolt)":"var(--red)",marginTop:12},children:[e.jsx("span",{className:"vt",children:Yt(p)==="retenu"?"â "+i.kept:Yt(p)==="pending"?"ð "+i.pending:"â "+i.dropped}),e.jsx("span",{className:"vd",children:p.reasoning||""})]})]})}),e.jsxs("div",{className:"ff",children:[!u&&p&&!(a&&Lt(p))&&e.jsxs("button",{type:"button",className:"evalbtn"+(c?" loading":""),style:{flex:1,justifyContent:"center",padding:15,fontSize:15},disabled:c,onClick:()=>{o(p)},children:[e.jsx("span",{className:"fill"}),i.launchEval]}),e.jsx("button",{type:"button",className:"abtn",style:{flex:"0 0 130px"},onClick:()=>n(u?{type:"modal",modal:null}:{type:"chainNext"}),children:u?i.closeBtn:i.skip})]})]})})}),document.body)}function _3(){const{st:t,dispatch:n,t:r,lang:i,scoped:s,contName:a}=it(),[o,c]=m.useState(""),[l,d]=m.useState(!1),[p,u]=m.useState(!1),g=t.filters,f=m.useMemo(()=>s.filter(h=>Rt(h)).length,[s]),L=g.win==="1"?0:g.win==="7"?1:g.win==="30"?2:3,v=async()=>{if(!(!/.+@.+\..+/.test(o)||p)){u(!0);try{await fetch(`${_e}/mes-secteurs/subscribe`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:o.trim(),sectors:g.sector,countries:g.country,source:"atelier",website:""})}),d(!0)}finally{u(!1)}}},y=[[r.amRows.continent,a],[r.amRows.since,r.amSince[L]],[r.amRows.signal,g.signalOnly?r.amOnlyOpen:r.amAnySignal],[r.amRows.engines,g.engine.length?g.engine.map(h=>Ln(h,i)).join(", "):r.amAllEngines],[r.amRows.sectors,g.sector.length?g.sector.join(", "):r.amAllSectors],[r.amRows.countries,g.country.length?g.country.map(h=>Dn(h,i)||h).join(", "):r.amAllCountries],[r.amRows.stages,g.stage.length?g.stage.join(", "):r.amAllStages]];return Vn.createPortal(e.jsx("div",{className:"atl",children:e.jsx("div",{className:"modal on",children:e.jsxs("div",{className:"mcard",children:[e.jsxs("div",{className:"mh",children:[e.jsx("span",{className:"no g",children:"ð"}),e.jsx("h2",{children:r.alertTitle}),e.jsx("button",{type:"button",className:"x",onClick:()=>n({type:"modal",modal:null}),children:"Ã"})]}),e.jsx("div",{className:"mb",children:l?e.jsxs("div",{className:"fin",children:[e.jsx("div",{className:"em",children:"ð"}),e.jsx("div",{className:"t",children:r.amOk}),e.jsx("div",{className:"s",dangerouslySetInnerHTML:{__html:r.amOkSub(o)}})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"crit",children:y.map(([h,b])=>e.jsxs("div",{className:"r",children:[e.jsx("span",{className:"k",children:h}),e.jsx("span",{className:"v",dangerouslySetInnerHTML:{__html:b}})]},h))}),e.jsxs("div",{className:"mfield",children:[e.jsx("input",{type:"email",placeholder:r.amMail,autoComplete:"email",value:o,onChange:h=>c(h.target.value),onKeyDown:h=>{h.key==="Enter"&&v()}}),e.jsxs("button",{type:"button",className:"evalbtn"+(p?" loading":""),style:{padding:"12px 18px"},onClick:()=>void v(),children:[e.jsx("span",{className:"fill"}),r.amActivate]})]}),e.jsx("p",{className:"mnote",dangerouslySetInnerHTML:{__html:r.amNote(s.length,f)}}),e.jsx("p",{className:"mnote",children:r.amHonest}),e.jsx("p",{className:"mnote",style:{borderLeft:"3px solid var(--red)",paddingLeft:11,color:"#9F5A5A"},dangerouslySetInnerHTML:{__html:r.amUrgency}})]})})]})})}),document.body)}function T3(){const{st:t,dispatch:n,dossiers:r,t:i,connected:s}=it(),a=m.useMemo(()=>s?r.filter(p=>Lt(p)):[],[r,s]),o=m.useMemo(()=>Pp(a.filter(p=>Yt(p)==="retenu"),{key:"signal",dir:-1}),[a]),c=m.useMemo(()=>a.filter(p=>Yt(p)==="ecarte"),[a]),l=t.spaceTab==="retenu"?o:c,d=t.spaceTab==="retenu"?"var(--brand)":"var(--red)";return Vn.createPortal(e.jsx("div",{className:"atl",children:e.jsx("div",{className:"modal on",children:e.jsxs("div",{className:"mcard",children:[e.jsxs("div",{className:"mh",children:[e.jsx("h2",{children:i.spaceTitle}),e.jsx("button",{type:"button",className:"x",onClick:()=>n({type:"modal",modal:null}),children:"Ã"})]}),e.jsxs("div",{className:"mb",children:[e.jsxs("div",{className:"sp-tabs",children:[e.jsxs("button",{type:"button",className:"sp-tab",style:{"--c":"var(--brand)"},"aria-selected":t.spaceTab==="retenu",onClick:()=>n({type:"spaceTab",tab:"retenu"}),children:["â ",i.statusKeep.replace("â ","")," ",e.jsx("b",{children:o.length})]}),e.jsxs("button",{type:"button",className:"sp-tab",style:{"--c":"var(--red)"},"aria-selected":t.spaceTab==="ecarte",onClick:()=>n({type:"spaceTab",tab:"ecarte"}),children:["â ",i.statusDrop.replace("â ","")," ",e.jsx("b",{children:c.length})]})]}),l.length===0&&e.jsx("div",{className:"sp-empty",children:i.spEmpty}),l.slice(0,40).map(p=>e.jsxs("div",{className:"sp-row",children:[e.jsx("span",{className:"sc",style:{"--c":d},children:typeof p.score=="number"&&p.score>0?p.score:"â"}),e.jsxs("span",{children:[e.jsx("div",{className:"nm",children:p.name}),e.jsx("div",{className:"rr",children:p.reasoning||p.tagline||""})]})]}
2170,p.id)),e.jsx("p",{className:"mnote",dangerouslySetInnerHTML:{__html:i.spNote}})]})]})})}),document.body)}const o1=m.createContext(null),it=()=>{const t=m.useContext(o1);if(!t)throw new Error("AtelierCtx manquant");return t};function ml({o:t,lg:n}){const{lang:r}=it(),i=Rt(t);return i?e.jsxs("span",{className:"sig"+(n?" sig-lg":""),title:Yh(i,r),children:[i.emoji," ",Yh(i,r)]}):null}function gl({o:t,src:n}){const{lang:r,t:i}=it(),s=Rt(t);if(!s)return null;const a=d3(s),o=p3(s);return e.jsxs("em",{className:"sigwin"+(o?" hot":""),title:i.signaledOn(n1(s,r))+" · "+i.win7(r1(s,r)),children:[e.jsx("span",{className:"gg",children:Array.from({length:7},(c,l)=>e.jsx("i",{className:l<a?"on":""},l))}),e.jsx("span",{className:"lb",children:o?i.lastDay:i.daysLeft(Math.max(0,s.left??0))}),n&&s.url&&e.jsx("a",{href:s.url,target:"_blank",rel:"noopener noreferrer",title:i.seeSource,onClick:c=>c.stopPropagation(),children:"â"})]})}function l1({o:t}){const{lang:n}=it(),r=s1(t.cc),i=t.cc?Dn(t.cc,n)||t.countryLabel||t.cc:t.countryLabel||"â";return e.jsx("span",{className:"c-flag",title:i||void 0,children:r?e.jsx("img",{src:r,width:24,height:18,alt:i||""}):e.jsx("span",{className:"em",children:"ð"})})}function q3(){const{scoped:t,dossiers:n,st:r,t:i,dispatch:s,contName:a}=it(),o=m.useMemo(()=>{const l=n.filter(d=>d.continent===r.continent&&Rt(d));return Pp(l,{key:"signal",dir:-1}).slice(0,30)},[n,r.continent]),c=l=>o.map(d=>(Rt(d),e.jsxs("button",{type:"button",className:"tk"+(Lt(d)?" spent":""),onClick:()=>s({type:"popup",id:d.id}),title:d.name+(d.tagline?" â "+d.tagline:""),children:[e.jsx(ml,{o:d}),e.jsxs("span",{className:"who",children:[e.jsx(l1,{o:d}),e.jsx("span",{className:"co",children:d.name})]}),typeof d.amountEur=="number"&&d.amountEur>0&&e.jsx("span",{className:"am",children:F3(d.amountEur)}),d.sector&&e.jsx("span",{className:"mt",children:d.sector}),e.jsx(gl,{o:d}),e.jsx("span",{className:"tkgo",children:"â"})]},l+(d.id||d.name))));return e.jsxs("div",{className:"ticker",children:[e.jsxs("span",{className:"lbl",children:[e.jsx("i",{}),i.live,e.jsx("span",{className:"cnt",children:o.length})]}),e.jsx("div",{className:"win",children:o.length?e.jsxs("div",{className:"run",children:[c(0),c(1)]}):e.jsx("div",{className:"run",style:{animation:"none"},children:e.jsx("span",{className:"tk quiet",children:i.liveQuiet(a)})})})]})}function F3(t){return t>=1e9?(t/1e9).toFixed(1).replace(".0","").replace(".",",")+" Mdâ¬":t>=1e6?Math.round(t/1e6)+" Mâ¬":Math.round(t/1e3)+" kâ¬"}function O3(){const{dossiers:t,connected:n,t:r,st:i,dispatch:s}=it(),a=m.useMemo(()=>t.filter(p=>br(p.date)===0),[t]),o=m.useMemo(()=>n?t.filter(p=>Yt(p)==="todo"):a.filter(p=>!Lt(p)),[t,a,n]),c=a.length-a.filter(p=>!Lt(p)).length,l=a.length?Math.min(100,c/a.length*100):100;let d;return n?d=o.length?r.goalTodo(o.length):r.goalCleared:a.length?c===0?d=r.goalSourced(a.length):c>=a.length?d=r.goalCleared:d=r.goalDone(c,a.length):d=r.goalSourced(0),e.jsxs("div",{className:"goal",children:[e.jsx("span",{className:"gtxt",dangerouslySetInnerHTML:{__html:d}}),e.jsx("div",{className:"pbar",children:e.jsx("i",{style:{width:l+"%"}})}),o.length>0&&e.jsx("button",{type:"button",className:"pilebtn",onClick:()=>{s(n?{type:"filters",patch:{status:"todo"}}:{type:"pile",on:!0})},children:i.pileMode||n&&i.filters.status==="todo"?r.goalContinue(o.length):r.goalTreat}),e.jsx("span",{className:"gspace"})]})}function M3(){const{dossiers:t,st:n,dispatch:r,connected:i,lang:s,t:a}=it(),[o,c]=m.useState(!1),l=m.useMemo(()=>{const d={};return t.forEach(p=>{p.continent&&Rp(p,n.filters,i)&&(d[p.continent]=(d[p.continent]||0)+1)}),d},[t,n.filters,i]);return e.jsxs("div",{className:"conts",children:[Jx.map(d=>{const p=Mp.find(u=>u.key===d);return e.jsxs("button",{type:"button",className:"cbtn","aria-selected":n.continent===d,onClick:()=>
2170r({type:"continent",key:d}),children:[s==="fr"?p.fr:p.en,e.jsx("span",{className:"n",children:l[d]||0})]},d)}),e.jsx("span",{className:"side",children:e.jsx("button",{type:"button",onClick:()=>{var d;c(!o),(d=document.getElementById("atl-stage"))==null||d.classList.toggle("folded")},children:o?a.showMap:a.hideMap})})]})}function c1({demo:t=!1}){const{lang:n}=ae(),r=Jy[n],i=s3(t,n),[s,a]=m.useReducer(g3,void 0,()=>m3("europe")),[o,c]=m.useState(null),[l,d]=m.useState(null),[p,u]=m.useState({kept:0,dropped:0}),[g,f]=m.useState(!1),[,L]=m.useState(0),v=m.useRef([]),y=i.session.token||"",h=i.connected,b=m.useMemo(()=>{const N=new Map;return i.dossiers.forEach(I=>{I.id&&N.set(I.id,I)}),N},[i.dossiers]),x=m.useMemo(()=>i.dossiers.filter(N=>f3(N,s,h)),[i.dossiers,s,h]),A=m.useMemo(()=>s.pileMode?i.dossiers.filter(N=>br(N.date)===0):x,[x,s.pileMode,i.dossiers]),w=Mp.find(N=>N.key===s.continent),S=n==="fr"?w.fr:w.en,E=(N,I)=>{N&&(I.verdict==="kept"?N.verdict=N.verdict||"MATCH":I.verdict==="ruled_out"&&(N.verdict="NO MATCH"),I.reason&&(N.reasoning=I.reason),L(ce=>ce+1))},j=(N,I)=>{const ce=((N==null?void 0:N.name)||I||"").trim();if(!h){d({kicker:ce});return}!ce||g||(f(!0),(async()=>{try{const K=await Ix(y,ce,"atelier"),pe={name:K.company||ce,verdict:K.verdict,reason:K.reason||"",remaining:K.remaining??null};v.current=[pe,...v.current].slice(0,8),K.verdict==="kept"&&u(ee=>({...ee,kept:ee.kept+1})),K.verdict==="ruled_out"&&u(ee=>({...ee,dropped:ee.dropped+1})),E(N||i.dossiers.find(ee=>(ee.name||"").toLowerCase()===ce.toLowerCase()),pe)}finally{f(!1)}})())},O=N=>{if(!h){d({kicker:N.name});return}ly(y,"analysis_request",N.name||"","")},k=(N,I)=>{h&&(iy(y,{status:I?"Validé":"Ãcarté",airtable_id:N.airtableId,check_id:N.checkId,company:N.name}),N.ceoStatus=I?"Validé":"Ãcarté",L(ce=>ce+1))},_={st:s,dispatch:a,t:r,lang:n,connected:h,token:y,dossiers:i.dossiers,scoped:x,base:A,byId:b,contName:S,askEvaluate:j,doAnalyse:O,doDecide:k,sessTally:p,markRow:c,markedId:o,evalBusy:g};return m.useEffect(()=>{const N=I=>{I.key==="Escape"&&(a({type:"popup",id:null}),a({type:"modal",modal:null}),a({type:"openFacet",facet:null}))};return window.addEventListener("keydown",N),()=>window.removeEventListener("keydown",N)},[]),e.jsx(o1.Provider,{value:_,children:e.jsxs("div",{className:"atl",children:[e.jsx("style",{children:e3}),e.jsxs("div",{className:"app",children:[e.jsx(q3,{}),e.jsx(O3,{}),e.jsx(M3,{}),e.jsx("div",{className:"fzone",children:e.jsxs("div",{className:"stage",id:"atl-stage",children:[e.jsx(v3,{}),e.jsx(y3,{})]})}),e.jsx(w3,{cards:v.current}),e.jsx(k3,{}),i.loading&&e.jsx("div",{className:"void",children:r.loading}),i.error&&!i.loading&&e.jsxs("div",{className:"void",children:[r.loadError," ",e.jsx("button",{type:"button",className:"abtn",onClick:i.refresh,children:r.retry})]})]}),s.popupId&&e.jsx(E3,{}),s.modal==="chain"&&e.jsx(C3,{}),s.modal==="alert"&&e.jsx(_3,{}),s.modal==="space"&&e.jsx(T3,{}),l&&e.jsx(Qr,{variant:"acquirer",initialCompany:Zh().co,initialWebsite:Zh().site,onClose:()=>d(null)})]})})}function Zh(){try{return{co:localStorage.getItem("ppmap:acquirer")||"",site:localStorage.getItem("ppmap:acquirerSite")||""}}catch{return{co:"",site:""}}}const Kh="v2",Jh=t=>t==="v1"||t==="v2";function d1(){if(typeof window>"u")return Kh;let t=null,n=!1;try{const i=new URLSearchParams(window.location.search);t=i.get("ui"),n=i.get("embed")==="1"}catch{}if(t==="reset"&&(ft("ui",""),t=null),Jh(t))return n||ft("ui",t),t;const r=fn("ui","");return Jh(r)?r:Kh}const R3=m.lazy(()=>Vr(()=>import("./AtelierV2Section-Cua_IQbO.js"),__vite__mapDeps([0,1,2,3,4])));function P3(){const{lang:t}=ae(),n=t==="fr",r=m.useRef(null),[i,s]=m.useState(!1),a=d1();return m.useEffect(()=>{const o=r.current;if(!o)return;const c=new IntersectionObserver(l=>{l[0]&&l[0].isIntersecting&&(s(!0),c.disconnect())},{rootMargin:"600px"});return c.observe(o),()=>c.disconnect()},[]),e.jsxs("section",{className:"df",id:"demo",children:[e.jsx("style",{children:I3}),e.jsxs("p",{className:"df-cap",children:["â ",n?"Voici lâatelier dâévaluation â les sociétés sourcées ce matin par nos moteurs, en direct.":"Here is the evaluation workshop â companies sourced this morning by our engines, live."]}),e.jsxs("div",{className:"df-frame",ref:r,children:[e.jsxs("div",{className:"df-bar",children:[e.jsx("i",{}),e.jsx("i",{}),e.jsx("i",{}),e.jsxs("span",{children:["proplace.co/",e.jsx("b",{children:"carte"})]})]}),e.jsx("div",{className:"df-body",children:i?a==="v2"?e.jsx(m.Suspense,{fallback:e.jsx("div",{className:"df-wait",children:"â¦"}),children:e.jsx(R3,{demo:!0})}):e.jsx(c1,{demo:!0}):e.jsx("div",{className:"df-wait",children:"â¦"})})]})]})}const I3=` 2171.df{max-width:1180px;margin:0 auto;padding:8px 24px 56px} 2172.df-cap{text-align:center;font-size:14px;font-weight:700;margin:0 0 14px} 2173.df-frame{border:1px solid var(--ink,#0A0A0A);border-radius:14px;overflow:hidden;box-shadow:0 30px 80px rgba(10,10,10,.16);background:#fff} 2174.df-bar{display:flex;align-items:center;gap:6px;background:#ECECE8;border-bottom:1px solid #DFDFD9;padding:9px 14px} 2175.df-bar i{width:10px;height:10px;border-radius:99px;background:#CFCFC8} 2176.df-bar span{margin-left:10px;background:#fff;border:1px solid #E2E2DC;color:#555;font-size:11.5px;padding:3px 12px;border-radius:8px} 2177.df-bar b{color:var(--green-dk,#15884a)} 2178.df-body{--atelier-h:min(720px,82vh)} 2179.df-wait{height:min(720px,82vh);display:flex;align-items:center;justify-content:center;
2179color:var(--mid,#999)} 2180@media(max-width:700px){.df-body{--atelier-h:560px}.df-wait{height:560px}} 2181`;function D3(){const{lang:t}=ae(),n=t==="fr",r=()=>{var s;window.dispatchEvent(new CustomEvent("ppmap:open-gate")),(s=document.getElementById("carte"))==null||s.scrollIntoView({behavior:"smooth",block:"start"})},i=n?"Voir un aperçu de deal flow â":"See a deal flow preview â";return e.jsxs("section",{className:"ps",id:"pricing",children:[e.jsx("style",{children:z3}),e.jsx("p",{className:"ps-eyebrow",children:n?"TARIFS":"PRICING"}),e.jsx("h2",{children:n?"Commencez gratuitement.":"Start for free."}),e.jsxs("div",{className:"ps-grid",children:[e.jsxs("div",{className:"ps-card",children:[e.jsx("b",{children:n?"Essai":"Trial"}),e.jsx("p",{className:"ps-price",children:"0 â¬"}),e.jsx("p",{className:"ps-ben",children:n?"Vos premières cibles aujourdâhui, en autonomie.":"Your first targets today, on your own."}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"Donnez votre site web : Stan déduit seul vos critères et lance le sourcing":"Give your website: Stan derives your criteria on its own and starts sourcing"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"Vos premières cibles, retenues â ou écartées â, avec la raison":"Your first targets, kept â or discarded â, with the reason"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"3 crédits offerts par jour : générez jusquâà 3 mémos chiffrés à la demande":"3 free credits a day: generate up to 3 quantified memos on demand"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"Un aperçu de votre deal flow personnalisé : triez, validez, écartez en un clic":"A preview of your personalised deal flow: sort, validate, discard in one click"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"Sans carte bancaire, sans engagement":"No credit card, no commitment"]})]}),e.jsx("button",{type:"button",onClick:r,children:i})]}),e.jsxs("div",{className:"ps-card main",children:[e.jsx("b",{children:"Standard"}),e.jsx("p",{className:"ps-price",children:n?"5 000 ⬠setup + 3 000 ⬠/ trimestre":"â¬5,000 setup + â¬3,000 / quarter"}),e.jsx("p",{className:"ps-ben",children:n?"Nous pilotons Stan. Vous nâavez quâà trancher.":"We drive Stan. All you do is decide."}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"Votre deal flow personnalisé, débloqué et affiné par nos soins":"Your personalised deal flow, unlocked and refined by us"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"Stan tourne chaque nuit : nouvelles cibles retenues ou écartées selon vos critères â en illimité":"Stan runs every night: new targets kept or discarded against your criteria â unlimited"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"Chaque matin, 3 mémos sur les meilleures cibles du jour : synergies chiffrées, verdict argumenté â relus par nous":"Every morning, 3 memos on the dayâs best targets: quantified synergies, argued verdict â reviewed by us"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"Votre brief Stan quotidien : toute lâactualité M&A et levées de fonds de votre marché, lâensemble des décisions autonomes de Stan, et les 3 mémos du jour":"Your daily Stan brief: all the M&A and fundraising news of your market, every autonomous decision Stan made, and the dayâs 3 memos"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"Tous les lundis, nous vous présentons uniquement les meilleurs dossiers à trancher â et affinons Stan grâce à vos retours":"Every Monday, we present only the best files for you to decide â and refine Stan with your feedback"]})]}),e.jsx("button",{type:"button",onClick:r,children:i})]}),e.jsxs("div",{className:"ps-card",children:[e.jsx("b",{children:n?"Entreprise":"Enterprise"}),e.jsx("p",{className:"ps-price",children:n?"15 000 ⬠setup + 9 000 ⬠/ trimestre":"â¬15,000 setup + â¬9,000 / quarter"}),e.jsx("p",{className:"ps-ben",children:n?"Votre équipe M&A externalisée, sans compteur.":"Your outsourced M&A team, no meter."}),e.jsxs("ul",{children:[e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"Tout le Standard, en illimité":"Everything in Standard, unlimited"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"Stan sâintègre à vos outils de deal flow â et évalue vos dossiers déjà en cours":"Stan plugs into your deal-flow tools â and evaluates your ongoing files"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"10 mémos instantanés générés chaque jour + mémos instantanés illimités à la demande":"10 instant memos generated every day + unlimited instant memos on demand"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"3 mémos détaillés par jour à la demande":"3 detailed memos a day on demand"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"}
2181)," ",n?"Plusieurs stratégies dâacquisition en parallèle (multi-verticales)":"Several acquisition strategies in parallel (multi-vertical)"]}),e.jsxs("li",{children:[e.jsx("i",{children:"â"})," ",n?"Corporate Developer joignable 24/7 : il personnalise vos mémos et peut approcher les cibles en votre nom, jusquâà ce que vous preniez le relais":"Corporate Developer reachable 24/7: personalising your memos and able to approach targets on your behalf, until you take over"]})]}),e.jsx("button",{type:"button",onClick:r,children:i})]})]})]})}const z3=` 2182.ps{max-width:1000px;margin:0 auto;padding:56px 24px 64px;text-align:center} 2183.ps-eyebrow{font-size:12px;font-weight:600;color:var(--green-dk,#12A150);margin:0 0 10px} 2184.ps h2{font-size:clamp(26px,3.6vw,38px);font-weight:800;margin:0 0 34px;letter-spacing:-.02em} 2185.ps-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;text-align:left} 2186.ps-card{border:1px solid var(--line,#E3E8F0);background:#fff;padding:26px 24px;display:flex;flex-direction:column;gap:14px;border-radius:16px;text-align:left} 2187.ps-card.main{border:2px solid var(--ink,#16233A);box-shadow:0 14px 40px rgba(10,10,10,.08)} 2188.ps-card b{font-size:19px;font-weight:800;letter-spacing:-.01em;min-height:24px} 2189.ps-price{font-size:16.5px;font-weight:800;margin:0;min-height:42px} 2190.ps-ben{font-size:14px;font-weight:700;color:var(--green-dk,#12A150);margin:0;line-height:1.45;min-height:42px} 2191.ps-card ul{margin:0;padding:0;display:grid;gap:9px;flex:1;align-content:start} 2192.ps-card li{list-style:none;display:flex;gap:9px;align-items:flex-start;font-size:13.5px;line-height:1.55;color:var(--sub,#444)} 2193.ps-card li i{flex:0 0 18px;width:18px;height:18px;border-radius:99px;background:var(--green,#12A150);color:#fff;font-style:normal;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;margin-top:2px} 2194.ps-card button,.ps-card a{border:none;background:var(--green,#12A150);color:#fff;font-size:13.5px;font-weight:800;padding:12px 10px;cursor:pointer;font-family:inherit;border-radius:10px;text-align:center;text-decoration:none;white-space:nowrap} 2195.ps-card button:hover,.ps-card a:hover{background:var(--green-dk,#0E7F3F)} 2196.ps-note{font-size:12.5px;color:var(--mid,#777);max-width:620px;margin:22px auto 0} 2197@media(max-width:860px){.ps-grid{grid-template-columns:1fr}} 2198`,B3={en:{strategyCta:"Schedule your strategy call"},fr:{strategyCta:"Planifier votre appel stratégique"}};function U3({eyebrow:t,heading:n,subcopy:r}){const{lang:i}=ae(),s=B3[i],[a,o]=m.useState(!1);return e.jsxs("div",{className:"section",style:{paddingTop:40,paddingBottom:40},children:[e.jsxs("div",{className:"wrap",style:{textAlign:"center"},children:[t&&e.jsx("div",{style:{fontSize:11,fontWeight:700,letterSpacing:".18em",textTransform:"uppercase",color:"var(--green)",marginBottom:10},children:t}),e.jsx("h3",{style:{fontSize:22,fontWeight:800,letterSpacing:"-.01em",color:"var(--ink)",margin:"0 0 10px",lineHeight:1.3},children:n}),e.jsx("p",{style:{fontSize:15,color:"var(--sub)",lineHeight:1.7,margin:"0 auto 18px",maxWidth:560},children:r}),e.jsx("button",{className:"btn",style:{borderRadius:12},onClick:()=>o(!0),children:s.strategyCta})]}),a&&e.jsx(Pi,{onClose:()=>o(!1)})]})}const V3={en:{cta1:{eyebrow:"See it on your market",heading:"Want Stan to run on a real target in your sector?",subcopy:"In 45 minutes, we run a live analysis of a target you pick. Full memo, financial model, synergies quantified â generated on screen while we talk. You leave with a concrete opportunity and zero commitment."}},fr:{cta1:{eyebrow:"Voyez-le sur votre marché",heading:"Vous voulez voir Stan tourner sur une cible réelle de votre secteur ?",subcopy:"En 45 minutes, nous lançons lâanalyse en direct dâune cible que vous choisissez. Mémo complet, modèle financier, synergies chiffrées â générés à lâécran pendant que nous échangeons. Vous repartez avec une opportunité concrète, sans aucun engagement."}}};function H3(){ht({en:{title:"Proplace â Home (v1 archive)",description:"Archived previous version of the Proplace home page."},fr:{title:"Proplace â Accueil (archive v1)",description:"Version précédente archivée de la page dâaccueil Proplace."}});const{lang:t}=ae(),n=V3[t],[r,i]=m.useState(!1),[s,a]=m.useState(""),[o,c]=m.useState("");return m.useEffect(()=>{try{ha()}catch{}},[]),m.useEffect(()=>{const l=document.createElement("meta");return l.name="robots",l.content="noindex,nofollow",document.head.appendChild(l),()=>{try{document.head.removeChild(l)}catch{}}},[]),m.useEffect(()=>{const l=()=>{try{a(localStorage.getItem("ppmap:acquirer")||""),c(localStorage.getItem("ppmap:acquirerSite")||"")}catch{}i(!0)};return window.addEventListener("ppmap:open-gate",l),()=>window.removeEventListener("ppmap:open-gate",l)},[]),e.jsxs("div",{children:[e.jsx(zn,{}),e.jsx(Wy,{}),e.jsx(P3,{}),e.jsx("hr",{className:"div"}),e.jsx(U3,{eyebrow:n.cta1.eyebrow,heading:n.cta1.heading,subcopy:n.cta1.subcopy}),e.jsx("hr",{className:"div"}),e.jsx(D3,{}),e.jsx(Nt,{}),r&&e.jsx(Qr,{variant:"acquirer",initialCompany:s,initialWebsite:o,onClose:()=>i(!1)})]})}const Y3=`.home2{ 2199 --brand:#0E8A4F; --brand-d:#0A6B3D; --brand-l:#E4F2EA; 2200 --blue:#1E5FCC; --bolt:#F59E0B; --red:#DC2626; 2201 --panel:#FFFFFF; --panel2:#F8FAFC;
2201 --panel3:#F1F5F9; 2202 --line:#E2E8F0; --line2:#CBD5E1; 2203 --ink:#0F172A; --muted:#64748B; --dim:#94A3B8; 2204 --sea:#E4EDF3; --land:#FFFFFF; --landline:#B2C2D0; --empty:#F1F5F9; --emptyline:#DCE4EB; 2205 --rail:240px; 2206 --page:1340px; 2207 --r:5px; 2208 --rs:3px; 2209 --ra:8px; 2210 --rb:12px; 2211 2212 --p0:#E7EBF0; --p1:#E7F3EC; --p2:#C4E0D0; --p3:#7FC0A0; --p4:#0E8A4F; 2213 --p5:#DC2626; --pv:#334155; --pf:#F59E0B; 2214 2215 --d0:#94A3B8; --d1:#9BD1B4; --d2:#5FB98C; --d3:#2E9A66; --d4:#0A6B3D; 2216 --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace; 2217 --body:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; 2218} 2219.home2,.home2 *{box-sizing:border-box} 2220.home2,.home2{margin:0;height:auto;overflow-x:hidden;scroll-behavior:smooth} 2221.home2{background:var(--panel2);color:var(--ink);font-family:var(--body);font-size:14px;line-height:1.45;-webkit-font-smoothing:antialiased} 2222.home2 button,.home2 input,.home2 textarea{font-family:inherit} 2223.home2,.home2 *{scrollbar-width:thin;scrollbar-color:var(--line2) transparent} 2224.home2 ::-webkit-scrollbar{width:11px;height:11px} 2225.home2 ::-webkit-scrollbar-track{background:transparent} 2226.home2 ::-webkit-scrollbar-thumb{background:var(--line2);border-radius:6px;border:3px solid var(--panel);background-clip:padding-box} 2227.home2 ::-webkit-scrollbar-thumb:hover{background:var(--muted);border-width:2px} 2228.home2 .wrap{max-width:var(--page);margin:0 auto;padding:0 30px} 2229.home2 .nav{position:sticky;top:0;z-index:60;display:flex;align-items:center;gap:14px;height:56px; 2230 background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)} 2231.home2 .nav .lg{font-weight:700;font-size:17px;letter-spacing:-.02em} 2232.home2 .nav .lg i{color:var(--brand);font-style:normal} 2233.home2 .nav .sp{flex:1} 2234.home2 .nav a{font-size:13px;font-weight:600;color:var(--ink);text-decoration:none} 2235.home2 .nav .cta{background:var(--brand);color:#fff;border-radius:99px;padding:8px 16px} 2236.home2 .nav .lang{display:flex;border:1px solid var(--line);border-radius:var(--r);overflow:hidden} 2237.home2 .nav .lang span{padding:4px 9px;font-size:11px;font-weight:600;color:var(--muted)} 2238.home2 .nav .lang span.on{background:var(--ink);color:#fff} 2239.home2 .hero{text-align:center;padding:54px 0 30px} 2240.home2 .hero h1{margin:0 0 10px;font-size:clamp(32px,5.2vw,52px);line-height:1.06;font-weight:700;letter-spacing:-.035em} 2241.home2 .hero .sub{font-size:16px;font-weight:600;color:var(--muted);margin-bottom:24px} 2242.home2 .hero .sub b{color:var(--brand-d)} 2243.home2 .hero .cue{display:inline-flex;align-items:center;gap:10px;font-size:15px;font-weight:600; 2244 border:1px solid var(--line2);border-radius:99px;padding:10px 20px;background:var(--panel);cursor:pointer} 2245.home2 .hero .cue:hover{border-color:var(--ink)} 2246.home2 .hero .cue b{color:var(--ink)} 2247.home2 .hero .cue .ar{animation:home2-bob 1.8s infinite} 2248@keyframes home2-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(3px)}} 2249.home2 .leadin{padding:0 0 12px;text-align:center;font-size:14px;color:var(--muted)} 2250.home2 .leadin b{color:var(--ink)} 2251.home2 .sec{padding:56px 0} 2252.home2 .sec.alt{background:var(--panel2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)} 2253.home2 .sec h2{margin:0 0 18px;font-size:clamp(24px,2.5vw,34px);font-weight:700;letter-spacing:-.03em;max-width:none;line-height:1.15;text-wrap:balance} 2254.home2 .sec p{font-size:15px;line-height:1.65;color:var(--muted);max-width:74ch;margin:0 0 14px} 2255.home2 .sec p b{color:var(--ink)} 2256.home2 .claim{font-size:19px;font-weight:700;text-align:center;margin:26px 0 0} 2257.home2 .frieze{display:flex;align-items:stretch;margin:22px 0 6px} 2258.home2 .frieze .fs{flex:1;min-width:0;padding:11px 12px 11px 24px;background:var(--c);color:var(--tc,#fff); 2259 clip-path:polygon(0 0,calc(100% - 13px) 0,100% 50%,calc(100% - 13px) 100%,0 100%,13px 50%);margin-left:-13px} 2260.home2 .frieze .fs:first-child{margin-left:0;padding-left:14px; 2261 clip-path:polygon(0 0,calc(100% - 13px) 0,100% 50%,calc(100% - 13px) 100%,0 100%)} 2262.home2 .frieze .fs .l{font-family:var(--mono);font-size:7.5px;letter-spacing:.14em;opacity:.85} 2263.home2 .frieze .fs .d{font-size:12px;font-weight:600;margin-top:2px} 2264.home2 .logos{display:flex;align-items:center;justify-content:center;gap:34px;flex-wrap:wrap;opacity:.5; 2265 font-weight:700;font-size:17px;color:var(--muted);letter-spacing:-.01em} 2266.home2 .team{text-align:center;font-size:13px;font-style:italic;color:var(--dim);max-width:80ch;margin:22px auto 0} 2267.home2 .foot{background:#0B1220;color:#8FA6BC;padding:34px 0;font-size:13px} 2268.home2 .foot .wrap{display:flex;gap:16px;flex-wrap:wrap;align-items:center} 2269.home2 .foot b{color:#fff} 2270.home2 .foot .sp{flex:1} 2271.home2 .unlock{background:var(--ink);color:#fff;padding:16px 0} 2272.home2 .unlock .wrap{display:flex;align-items:center;gap:16px;flex-wrap:wrap} 2273.home2 .unlock b{font-size:15px;font-weight:700} 2274.home2 .unlock span{font-size:13px;color:#9FB6CA;flex:1;
2274min-width:200px} 2275.home2 .unlock button{background:var(--brand);color:#fff;border:0;border-radius:99px;padding:11px 20px;font-size:13.5px;font-weight:700;cursor:pointer} 2276.home2 .pageonly[hidden]{display:none} 2277.home2 .memospec{background:var(--panel);border:1px solid var(--line2);border-radius:var(--ra);padding:12px 20px; 2278 font-size:14px;font-weight:700;cursor:pointer;margin-top:8px} 2279.home2 .memospec:hover{border-color:var(--ink)} 2280.home2 .bigcta{background:var(--ink);color:#fff;border:0;border-radius:var(--ra);padding:13px 22px;font-size:14px;font-weight:700;cursor:pointer} 2281.home2 .cmp{width:100%;border-collapse:collapse;margin:8px 0 6px;font-size:13.5px} 2282.home2 .cmp th,.home2 .cmp td{padding:11px 14px;border-bottom:1px solid var(--line);text-align:left} 2283.home2 .cmp thead th{font-family:var(--mono);font-size:8.5px;letter-spacing:.14em;color:var(--dim);font-weight:700} 2284.home2 .cmp td:first-child{color:var(--muted);width:32%} 2285.home2 .cmp .hi{background:var(--brand-l);font-weight:700;color:var(--brand-d)} 2286.home2 .cmp thead .hi{color:var(--brand-d)} 2287.home2 .closer{font-size:15px;font-weight:600;color:var(--ink)!important;margin:14px 0 0} 2288.home2 .obj{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;margin-top:20px} 2289.home2 .ob{background:var(--panel);border:1px solid var(--line);border-radius:var(--rb);padding:17px} 2290.home2 .ob .q{font-weight:700;font-size:14.5px;margin-bottom:7px} 2291.home2 .ob p{font-size:13px;line-height:1.6;color:var(--muted);margin:0} 2292.home2 .mspec{border:1px solid var(--line);border-radius:var(--rb);padding:18px;background:var(--panel2)} 2293.home2 .mspec .mh2{font-size:14.5px;font-weight:700;margin-bottom:14px} 2294.home2 .mspec .mlb{font-family:var(--mono);font-size:8px;letter-spacing:.16em;color:var(--dim);margin:14px 0 6px} 2295.home2 .mspec .mv{font-size:16px;font-weight:800;color:var(--brand-d)} 2296.home2 .mspec .mv span{font-size:12.5px;font-weight:600;color:var(--muted)} 2297.home2 .mspec ul{margin:0;padding:0;list-style:none} 2298.home2 .mspec li{position:relative;padding-left:16px;font-size:13px;color:var(--muted);margin-bottom:7px;line-height:1.55} 2299.home2 .mspec li::before{content:"â";position:absolute;left:0;color:var(--brand)} 2300.home2 .mspec p{font-size:13px;color:var(--muted);margin:0;line-height:1.55} 2301.home2 .msyn{width:100%;border-collapse:collapse;font-size:13px} 2302.home2 .msyn td{padding:7px 0;border-bottom:1px solid var(--line);color:var(--muted)} 2303.home2 .msyn td:last-child{text-align:right;font-family:var(--mono);font-weight:700;color:var(--ink)} 2304.home2 .msyn .tot td{border-bottom:0;font-weight:700;color:var(--ink);padding-top:10px} 2305.home2 .msyn .tot td:last-child{color:var(--brand-d);font-size:15px} 2306@media (max-width:760px){ 2307.home2 .hero{padding:34px 0 22px} 2308.home2 .cmp td:first-child{width:38%} 2309.home2 .sec{padding:38px 0} 2310.home2 .frieze{flex-direction:column} 2311.home2 .frieze .fs,.home2 .frieze .fs:first-child{clip-path:none;margin:0 0 3px;padding:9px 12px;border-radius:var(--r)}} 2312@keyframes home2-pulse2{0%,100%{opacity:1}50%{opacity:.35}} 2313@keyframes home2-blink{0%,100%{opacity:1}50%{opacity:.2}} 2314@keyframes home2-roll{from{transform:translateX(0)}to{transform:translateX(-50%)}} 2315.home2 g.co{cursor:pointer;transition:opacity .16s} 2316.home2 g.co circle.h{fill:#000;fill-opacity:0;pointer-events:all} 2317.home2 g.co circle.v{pointer-events:none;stroke:#fff;stroke-opacity:.92} 2318.home2 g.co.off{opacity:.05;pointer-events:none} 2319.home2 g.co.done circle.v{fill-opacity:.32;stroke-opacity:.4} 2320.home2 g.co:hover circle.v{stroke:var(--ink);stroke-opacity:1} 2321@keyframes home2-spin{from{transform:rotate(0)}to{transform:rotate(-360deg)}} 2322@keyframes home2-pulse{0%{box-shadow:0 0 0 0 rgba(22,163,74,.45)}100%{box-shadow:0 0 0 12px rgba(22,163,74,0)}} 2323@keyframes home2-pop{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}} 2324@keyframes home2-up{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-46px)}} 2325@media (prefers-reduced-motion:reduce){ 2326.home2,.home2 *{transition:none!important;animation:none!important}} 2327@keyframes home2-bump{0%{transform:translateY(0)}30%{transform:translateY(-4px)}100%{transform:translateY(0)}} 2328@keyframes home2-fade{0%{opacity:0;transform:translateY(4px)}20%{opacity:1;transform:translateY(0)}80%{opacity:1}100%{opacity:0}
2328} 2329.home2{font-size:15px} 2330.home2 .hero{padding:70px 0 34px;text-align:center} 2331.home2 .hero h1{font-size:clamp(34px,5.4vw,56px);line-height:1.03;letter-spacing:-.04em;margin:0 0 14px} 2332.home2 .hero .sub{font-size:17px;margin-bottom:10px} 2333.home2 .hero .claim2 b{font-weight:800;color:var(--ink)} 2334.home2 .claim2{font-size:20px;font-weight:600;letter-spacing:-.018em;margin:0 auto 26px;max-width:none;line-height:1.35;text-wrap:balance;color:var(--muted)} 2335.home2 .hero .cue{font-size:15.5px;padding:12px 24px} 2336.home2 .leadin{padding:0 0 16px;font-size:15px;max-width:none} 2337.home2 .sec{padding:76px 0} 2338.home2 .sec h2{font-size:clamp(24px,3vw,34px);letter-spacing:-.03em;line-height:1.15;margin:0 0 20px;max-width:none;text-wrap:balance} 2339.home2 .sec p{font-size:16px;line-height:1.72;max-width:none;margin:0 0 18px;color:var(--muted)} 2340.home2 .sec p.big{font-size:19px;line-height:1.6;color:var(--ink);font-weight:500;max-width:44ch} 2341.home2 .two-col{display:grid;grid-template-columns:1fr 1fr;gap:44px;align-items:start} 2342.home2 .claim{font-size:22px;font-weight:700;letter-spacing:-.02em;margin:34px 0 0;text-align:center} 2343.home2 .kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;background:var(--line); 2344 border:1px solid var(--line);border-radius:var(--rb);overflow:hidden;margin:26px 0 6px} 2345.home2 .kpi{background:var(--panel);padding:20px 22px} 2346.home2 .kpi b{display:block;font-size:34px;font-weight:800;letter-spacing:-.035em;line-height:1} 2347.home2 .kpi span{display:block;font-size:13px;color:var(--muted);margin-top:7px;line-height:1.45} 2348.home2 .kpi.hi b{color:var(--brand-d)} 2349.home2 .frieze{margin:26px 0 10px} 2350.home2 .logos{gap:44px;font-size:19px} 2351.home2 .team{font-size:14px;max-width:none;text-align:left;font-style:normal;color:var(--muted)} 2352.home2 .cmp{font-size:14.5px} 2353.home2 .cmp th,.home2 .cmp td{padding:14px 16px} 2354.home2 .obj{gap:20px;margin-top:26px} 2355.home2 .ob{padding:22px} 2356.home2 .ob .q{font-size:15.5px;margin-bottom:9px} 2357.home2 .ob p{font-size:13.5px;line-height:1.65} 2358@media (max-width:860px){ 2359.home2 .two-col{grid-template-columns:1fr;gap:26px} 2360.home2 .sec{padding:48px 0}} 2361.home2 .promise{display:flex;align-items:stretch;justify-content:center;gap:28px;margin-top:26px;flex-wrap:wrap} 2362.home2 .promise span{display:flex;flex-direction:column;align-items:center;gap:3px;font-size:13px;color:var(--muted)} 2363.home2 .promise b{font-size:31px;font-weight:800;color:var(--ink);letter-spacing:-.035em;line-height:1.05} 2364.home2 .promise i{width:1px;background:var(--line)} 2365.home2 .reject{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:14px;margin-top:22px} 2366.home2 .rj{background:var(--panel);border:1px solid var(--line);border-left:3px solid var(--red); 2367 border-radius:0 var(--rb) var(--rb) 0;padding:16px 18px} 2368.home2 .rj b{font-size:15px;font-weight:700} 2369.home2 .rj .rt{font-size:9.5px;font-weight:700;background:#FEE2E2;color:#B91C1C;border-radius:var(--rs); 2370 padding:2px 7px;margin-left:8px;vertical-align:2px} 2371.home2 .rj p{font-size:13px;color:var(--muted);margin:9px 0 0;line-height:1.6} 2372.home2 .vs{border:1px solid var(--line);border-radius:var(--rb);overflow:hidden;background:var(--panel)} 2373.home2 .vsh,.home2 .vsr{display:grid;grid-template-columns:1.1fr 1fr 1fr;align-items:center} 2374.home2 .vsh{background:var(--panel2);border-bottom:1px solid var(--line)} 2375.home2 .vsh span{padding:12px 16px;font-family:var(--mono);font-size:8.5px;letter-spacing:.14em;color:var(--dim);font-weight:700} 2376.home2 .vsh .hi,.home2 .vsr .hi{background:var(--brand-l)} 2377.home2 .vsh .hi{color:var(--brand-d)} 2378.home2 .vsr{border-bottom:1px solid var(--line)} 2379.home2 .vsr:last-child{border-bottom:0} 2380.home2 .vsr span{padding:13px 16px;font-size:13.5px;color:var(--muted)} 2381.home2 .vsr span:first-child{color:var(--ink);font-weight:600} 2382.home2 .vsr .hi{color:var(--brand-d);font-weight:700} 2383@media (max-width:720px){ 2384.home2 .vsh,.home2 .vsr{grid-template-columns:1fr} 2385.home2 .vsh span:first-child{display:none}} 2386.home2 .sec.cred{text-align:center} 2387.home2 .credlbl{font-family:var(--mono);font-size:8.5px;letter-spacing:.18em;color:var(--dim);margin-bottom:20px} 2388.home2 .logos{display:flex;align-items:center;justify-content:center;gap:44px;flex-wrap:wrap;opacity:.42; 2389 font-weight:700;font-size:19px;color:var(--ink);letter-spacing:-.01em} 2390.home2 .credtxt{font-size:14px;color:var(--muted);max-width:72ch;margin:24px auto 0;line-height:1.7} 2391.home2 .credq{font-size:19px;font-weight:600;color:var(--ink);max-width:44ch;margin:18px auto 0; 2392 letter-spacing:-.015em;line-height:1.4} 2393.home2 .qa{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:0 44px;margin-top:8px} 2394.home2 .qai{padding:20px 0;border-top:1px solid var(--line)} 2395.home2 .qai h3{margin:0 0 8px;font-size:16px;font-weight:600;letter-spacing:-.015em;color:var(--ink)} 2396.home2 .qai p{margin:0;font-size:13.5px;line-height:1.7;color:var(--muted)} 2397.home2 .leadin b{color:var(--ink);font-weight:700} 2398.home2 .leadin .li2{display:block;margin-top:5px;color:var(--dim)} 2399.home2 .sec .ctr{text-align:center;max-width:78ch;margin-left:auto;margin-right:auto;text-wrap:balance} 2400.home2 .sec.alt .ctr,.home2 .sec .ctr{margin-bottom:22px} 2401.home2 .cov3{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px;margin-top:26px} 2402.home2 .cv{border:1px solid var(--line);border-radius:var(--rb);padding:20px;background:var(--panel)} 2403.home2 .cv b{display:block;font-size:30px;font-weight:800;letter-spacing:-.035em;color:var(--brand-d);line-height:1}
2404.home2 .cv span{display:block;font-size:13px;font-weight:600;color:var(--ink);margin:6px 0 9px} 2405.home2 .cv p{font-size:13px;line-height:1.6;color:var(--muted);margin:0} 2406.home2 .vskick{text-align:center;font-size:16px;color:var(--muted);max-width:74ch;margin:0 auto 24px;text-wrap:balance} 2407.home2 .vskick b{color:var(--ink);font-weight:700} 2408.home2 .vsfoot{text-align:center;font-size:15px;font-weight:600;color:var(--ink);max-width:60ch; 2409 margin:24px auto 0;text-wrap:balance} 2410.home2 .steps3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:26px} 2411.home2 .s3{border:1px solid var(--line);border-radius:var(--rb);padding:20px;background:var(--panel)} 2412.home2 .s3 b{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ink); 2413 color:#fff;font-size:12.5px;font-weight:700;margin-bottom:11px} 2414.home2 .s3 span{display:block;font-size:15px;font-weight:700;margin-bottom:6px} 2415.home2 .s3 p{font-size:13px;line-height:1.6;color:var(--muted);margin:0} 2416.home2 .mini{font-size:12.5px;color:var(--dim);margin-top:11px} 2417.home2 .cov3 .cv p{font-size:12.5px} 2418.home2 .vs{max-width:900px;margin:0 auto} 2419.home2 .lead-l{text-align:left;max-width:none;font-size:17px;color:var(--muted);margin:0 0 6px;text-wrap:balance} 2420.home2 .lead-l.vskick{font-size:17px;margin-bottom:22px} 2421.home2 .sec .lead-l.big{font-size:17px;margin-bottom:24px} 2422.home2 .dec3{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;margin-top:26px} 2423.home2 .d3{border:1px solid var(--line);border-radius:var(--rb);padding:20px;background:var(--panel);display:flex;flex-direction:column} 2424.home2 .d3h{display:flex;align-items:center;gap:10px;margin-bottom:9px} 2425.home2 .d3h b{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:var(--ink); 2426 color:#fff;font-size:12px;font-weight:700;flex:none} 2427.home2 .d3h span{font-size:16px;font-weight:700;letter-spacing:-.015em} 2428.home2 .d3>p{font-size:13.5px;line-height:1.6;color:var(--muted);margin:0 0 16px} 2429.home2 .mock{margin-top:auto;border:1px solid var(--line);border-radius:var(--r);overflow:hidden;background:var(--panel2)} 2430.home2 .mkfun{display:flex;background:var(--panel)} 2431.home2 .mkst{flex:1;padding:7px 6px;text-align:center;border-right:1px solid var(--line)} 2432.home2 .mkst:last-child{border-right:0} 2433.home2 .mkst{font-family:var(--mono);font-size:6.5px;letter-spacing:.1em;color:var(--dim);display:block} 2434.home2 .mkst b{display:block;font-family:var(--body);font-size:14px;font-weight:800;color:var(--ink);margin-top:2px} 2435.home2 .mkst.on{background:#FFF8ED;box-shadow:inset 0 3px 0 #D97706} 2436.home2 .mkst.on,.home2 .mkst.on b{color:#B45309} 2437.home2 .mkrow{display:flex;align-items:center;gap:9px;padding:10px 11px;border-top:1px solid var(--line);background:var(--panel)} 2438.home2 .mkrow .fl{width:16px;height:11px;border-radius:2px;background:linear-gradient(90deg,#0055A4 33%,#fff 33% 66%,#EF4135 66%)} 2439.home2 .mkrow b{font-size:13px} 2440.home2 .mkv{font-size:9.5px;font-weight:700;background:#E4F2EA;color:var(--brand-d);border-radius:var(--rs);padding:2px 7px} 2441.home2 .mkw{margin-left:auto;font-family:var(--mono);font-size:9px;color:var(--muted);background:var(--panel3); 2442 border-radius:var(--rs);padding:2px 6px} 2443.home2 .mock.pick{background:#FFFBEB;border-color:#F5DFA8;padding:13px} 2444.home2 .pkh{font-family:var(--mono);font-size:8px;letter-spacing:.14em;color:#B45309;font-weight:700;margin-bottom:7px} 2445.home2 .pkq{font-size:12.5px;font-weight:600;margin-bottom:11px} 2446.home2 .pkb{display:flex;gap:9px} 2447.home2 .pk-oui,.home2 .pk-non{flex:1;border-radius:var(--ra);padding:11px;font-size:14px;font-weight:800;cursor:default;border:2px solid} 2448.home2 .pk-oui{background:var(--brand);border-color:var(--brand);color:#fff} 2449.home2 .pk-non{background:#fff;border-color:var(--red);color:var(--red)} 2450.home2 .pkn{display:flex;gap:9px;margin-top:7px} 2451.home2 .pkn span{flex:1;font-size:10.5px;line-height:1.4;color:var(--muted);text-align:center} 2452.home2 .mock.cond{background:var(--panel);padding:14px} 2453.home2 .cd1{display:flex;align-items:center;gap:11px;padding:8px 0;border-bottom:1px solid var(--line);font-size:13px;color:var(--muted)} 2454.home2 .cd1:nth-child(3){border-bottom:0} 2455.home2 .cdi{min-width:44px;text-align:center;font-family:var(--mono);font-size:12px;font-weight:800;color:#B45309; 2456 background:#FFF8ED;border-radius:var(--rs);padding:4px 8px} 2457.home2 .cdar{text-align:center;color:var(--dim);font-size:14px;margin:4px 0} 2458.home2 .cdout{background:var(--ink);color:#fff;border-radius:var(--r);padding:10px;text-align:center; 2459 font-size:12.5px;font-weight:700} 2460.home2 .mods{display:flex;gap:14px;flex-wrap:wrap;margin:24px 0 20px} 2461.home2 .mod{display:flex;align-items:center;gap:10px;border:1px solid var(--line);border-radius:var(--ra); 2462 padding:0 14px;height:40px;background:var(--panel);position:relative} 2463.home2 .mod .ml{position:absolute;top:-7px;left:11px;background:var(--panel);padding:0 6px; 2464 font-family:var(--mono);
2464font-size:7px;letter-spacing:.16em;color:var(--dim)} 2465.home2 .mod .mb{width:46px;height:5px;background:var(--panel3);border-radius:99px;overflow:hidden} 2466.home2 .mod .mb i{display:block;height:100%;background:var(--brand)} 2467.home2 .mod b{font-size:14px;font-weight:800;letter-spacing:-.02em} 2468.home2 .mod .mdv{width:1px;height:16px;background:var(--line)} 2469.home2 .mod .mt{font-size:12px;color:var(--muted)} 2470.home2 .mod .mg{font-size:12px;font-weight:600;color:var(--brand-d)} 2471.home2 .covgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:16px} 2472.home2 .cvbox{border:1px solid var(--line);border-radius:var(--rb);padding:18px;background:var(--panel2)} 2473.home2 .cvh{display:flex;align-items:baseline;gap:12px;margin-bottom:9px} 2474.home2 .cvh b{font-size:16px;font-weight:700} 2475.home2 .cvp{margin-left:auto;font-size:24px;font-weight:800;color:var(--brand-d);letter-spacing:-.03em} 2476.home2 .cvbar{height:9px;background:var(--panel3);border-radius:99px;overflow:hidden;margin-bottom:12px} 2477.home2 .cvbar i{display:block;height:100%;background:linear-gradient(90deg,#3FB584,var(--brand));border-radius:99px} 2478.home2 .cvchips{display:flex;gap:7px;flex-wrap:wrap} 2479.home2 .cc{font-size:12px;font-weight:600;border-radius:99px;padding:5px 12px} 2480.home2 .cc.ok{background:#E4F2EA;color:var(--brand-d)} 2481.home2 .cc.todo{background:#FFF7ED;color:#B45309} 2482.home2 .cc.neu{background:var(--panel3);color:var(--muted)} 2483.home2 .cvrates{display:flex;gap:7px;margin-top:13px;flex-wrap:wrap} 2484.home2 .cr{flex:1;min-width:70px;border:1px solid var(--line);background:var(--panel);border-radius:var(--r); 2485 padding:7px;text-align:center;font-size:12.5px;font-weight:700} 2486.home2 .cr em{display:block;font-style:normal;font-size:10px;font-weight:400;color:var(--dim);margin-top:2px} 2487.home2 .cr.on{background:var(--brand);border-color:var(--brand);color:#fff} 2488.home2 .cr.on em{color:rgba(255,255,255,.8)} 2489.home2 .cov3{margin-top:22px} 2490.home2 .vs.big2{max-width:none} 2491.home2 .vs.big2 .vsr span{padding:16px 20px;font-size:15px} 2492.home2 .vs.big2 .vsh span{padding:14px 20px;font-size:9.5px} 2493.home2 .vs.big2 .vsr .hi,.home2 .vs.big2 .vsh .hi{font-size:15.5px} 2494.home2 .eyeb{display:inline-flex;align-items:center;gap:9px;font-family:var(--body);font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--brand-d);background:var(--brand-l);border-radius:99px;padding:8px 16px 8px 14px;margin-bottom:18px} 2495.home2 .lead-w{text-align:left;max-width:none;font-size:19px;line-height:1.5;color:var(--muted); 2496 margin:0 0 26px;text-wrap:pretty} 2497.home2 .vs.big3{max-width:none;border-radius:var(--rb)} 2498.home2 .vs.big3 .vsh,.home2 .vs.big3 .vsr{grid-template-columns:1.05fr 1fr 1fr} 2499.home2 .vs.big3 .vsh span{padding:16px 22px;font-size:11px;letter-spacing:.1em} 2500.home2 .vs.big3 .vsh span:nth-child(2),.home2 .vs.big3 .vsh .hi{font-family:var(--body);font-size:17px; 2501 font-weight:700;letter-spacing:-.02em;text-transform:none;color:var(--ink)} 2502.home2 .vs.big3 .vsh .hi{color:var(--brand-d)} 2503.home2 .vs.big3 .vsr span{padding:18px 22px;font-size:15.5px} 2504.home2 .vs.big3 .vsr span:first-child{font-size:14px;color:var(--muted);font-weight:500} 2505.home2 .vs.big3 .vsr .hi{font-size:16px} 2506@media (max-width:760px){ 2507.home2 .vs.big3 .vsr span{padding:13px 15px;font-size:14px}} 2508.home2 .learn{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px;margin-top:24px} 2509.home2 .lrnb{border:1px solid var(--line);border-radius:var(--rb);padding:20px;background:var(--panel)} 2510.home2 .lrnb .lrni{display:inline-flex;align-items:center;gap:6px;font-size:18px;background:var(--panel2); 2511 border-radius:var(--r);padding:7px 12px;margin-bottom:12px} 2512.home2 .lrnb b{display:block;font-size:15px;font-weight:700;margin-bottom:7px} 2513.home2 .lrnb p{font-size:13px;line-height:1.65;color:var(--muted);margin:0} 2514.home2 .eyeb{display:flex;align-items:center;gap:10px;font-family:var(--body);font-size:12px;font-weight:700; 2515 letter-spacing:.02em;color:var(--brand-d);text-transform:none;margin-bottom:13px} 2516.home2 .eyeb i{display:block;width:7px;height:7px;background:var(--brand);border-radius:50%;flex:none} 2517.home2 .cvbox.solo{max-width:none;margin-top:24px} 2518.home2 .cvbox.solo .cvh b{font-size:19px} 2519.home2 .cvbox.solo .cvp{font-size:30px} 2520.home2 .cc.mat{background:var(--brand);color:#fff} 2521.home2 .dec3.four{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}
2522.home2 .mkfield{display:flex;align-items:center;gap:8px;padding:11px 12px;background:var(--panel); 2523 border-bottom:1px solid var(--line);font-size:13px} 2524.home2 .mkfield span{font-weight:600;flex:1} 2525.home2 .mkfield em{font-style:normal;font-family:var(--mono);font-size:7.5px;letter-spacing:.12em;color:var(--brand-d); 2526 background:var(--brand-l);border-radius:var(--rs);padding:3px 7px} 2527.home2 .mkangles{display:flex;flex-wrap:wrap;gap:5px;padding:11px 12px} 2528.home2 .mkangles span{font-size:11px;background:var(--panel);border:1px solid var(--line);border-radius:99px; 2529 padding:4px 10px;color:var(--muted)} 2530.home2 .mkr2{display:flex;align-items:center;gap:8px;padding:9px 12px;border-bottom:1px solid var(--line); 2531 background:var(--panel);flex-wrap:wrap} 2532.home2 .mkr2:last-child{border-bottom:0} 2533.home2 .mkr2 b{font-size:12.5px;flex:none} 2534.home2 .mkm{display:inline-block;width:auto;height:auto;font-size:9px;font-weight:700;border-radius:var(--rs);padding:3px 8px;white-space:nowrap;flex:none;line-height:1.3} 2535.home2 .mkm.mk-ok{background:var(--brand);color:#fff} 2536.home2 .mkm.mk-no{background:var(--red);color:#fff} 2537.home2 .mkr2 em{font-style:normal;font-size:11px;color:var(--dim);width:100%} 2538.home2 .mkcov{padding:13px 12px;background:var(--panel)} 2539.home2 .mkl{display:block;font-family:var(--mono);font-size:7.5px;letter-spacing:.14em;color:var(--dim);margin-bottom:4px} 2540.home2 .mkcov b{font-size:23px;font-weight:800;letter-spacing:-.03em} 2541.home2 .mkb{display:block;height:5px;background:var(--panel3);border-radius:99px;overflow:hidden;margin:9px 0 5px} 2542.home2 .mkb i{display:block;height:100%;background:var(--brand)} 2543.home2 .mkcov em{font-style:normal;font-size:11px;color:var(--muted)} 2544.home2 .mkbtn{width:100%;background:var(--panel);border:0;border-top:1px solid var(--line);padding:10px; 2545 font-size:11.5px;font-weight:600;color:var(--ink);cursor:default} 2546.home2 .mkmemo{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--panel)} 2547.home2 .mkmemo b{font-size:13px} 2548.home2 .mksc{margin-left:auto;font-family:var(--mono);font-size:12px;font-weight:700} 2549.home2 .mktabs{display:flex;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--panel)} 2550.home2 .mktabs span{padding:7px 9px;font-family:var(--mono);font-size:6.5px;letter-spacing:.1em;color:var(--dim)} 2551.home2 .mktabs .on{color:var(--ink);font-weight:700;box-shadow:inset 0 -2px 0 var(--blue)} 2552.home2 .mkbody{padding:11px 12px;font-size:11.5px;color:var(--muted)} 2553.home2 .mkbody b{color:var(--brand-d)} 2554.home2 .mkmore{padding:9px 12px;border-top:1px solid var(--line);background:#EEF3FD;color:var(--blue); 2555 font-size:11px;font-weight:600} 2556.home2 .sec.alt .eyeb{background:var(--panel);box-shadow:inset 0 0 0 1px var(--line)} 2557.home2 .already{margin-top:24px;border:1px solid var(--line);border-left:3px solid var(--brand); 2558 border-radius:0 var(--rb) var(--rb) 0;padding:18px 22px;background:var(--panel2)} 2559.home2 .already b{display:block;font-size:16px;font-weight:700;margin-bottom:8px} 2560.home2 .already p{font-size:14px;line-height:1.7;color:var(--muted);margin:0;max-width:none} 2561.home2 .already p+p{margin-top:11px} 2562.home2 .vok,.home2 .vno{display:inline-block;font-size:10px;font-weight:700;border-radius:var(--rs); 2563 padding:2px 7px;white-space:nowrap;vertical-align:1px;line-height:1.3} 2564.home2 .vok{background:var(--brand);color:#fff} 2565.home2 .vno{background:var(--red);color:#fff} 2566.home2 .lrnb.hi{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-l)} 2567.home2 .lrnb.hi .lrni{background:var(--brand-l)} 2568.home2 .d3h .vok{font-size:12px;vertical-align:2px} 2569.home2 .mkl2{display:flex;align-items:center;gap:9px;padding:8px 12px;border-bottom:1px solid var(--line); 2570 background:var(--panel);font-size:12px;color:var(--muted)} 2571.home2 .mkl2>span:first-child{font-size:14px;background:var(--panel2);border-radius:var(--rs);padding:3px 8px} 2572.home2 .mkl2 em{margin-left:auto;font-style:normal;font-size:10.5px;color:var(--dim);white-space:nowrap} 2573.home2 .mkgain{padding:12px} 2574.home2 .mkgain .mkb{margin:7px 0 5px} 2575.home2 .mkgain em{font-style:normal;font-size:10.5px;color:var(--dim)} 2576.home2 #after .sec{padding:76px 0;background:none;border:0;position:relative} 2577.home2 #after .sec.alt{background:none} 2578.home2 #after .sec::before{content:"";position:absolute;top:0;left:30px;right:30px;height:1px; 2579 background:rgba(15,23,42,.09)} 2580.home2 #after .sec:first-child::before{display:none} 2581.home2 .eyeb{display:block;background:none;box-shadow:none;padding:0;margin:0 0 14px; 2582 font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.2em; 2583 text-transform:uppercase;color:var(--dim)} 2584.home2 .eyeb i,.home2 .eyeb .eyn{display:none} 2585.home2 .sec.alt .eyeb{background:none;box-shadow:none} 2586.home2 #pName{display:flex;align-items:center;gap:9px;flex-wrap:wrap} 2587.home2 #pMemo{border:0;border-left:2px solid var(--line2);border-radius:0;background:none; 2588 padding:2px 0 2px 13px;margin-top:6px;font-size:13px;line-height:1.6;color:var(--muted);font-style:italic} 2589.home2 #pMemo,.home2 .pop .memo{background:none!important;box-shadow:none!important;border:0; 2590 border-left:2px solid var(--line2);border-radius:0;padding:1px 0 1px 13px;margin-top:5px; 2591 font-size:13px;line-height:1.6;color:var(--muted);font-style:italic} 2592.home2 #rdvM .mcard{width:min(760px,100%)} 2593.home2 #rdvM .mb{padding:0 22px 22px} 2594.home2 .urlcta{margin-top:30px;border:1px solid var(--line);border-radius:var(--rb);padding:26px 28px; 2595 background:var(--panel);box-shadow:0 1px 2px rgba(15,23,42,.04)} 2596.home2 .urlcta .uh{font-size:21px;font-weight:700;letter-spacing:-.025em;margin-bottom:14px} 2597.home2 .ur{display:flex;gap:10px;flex-wrap:wrap;align-items:stretch} 2598.home2 .uf{display:flex;align-items:center;gap:10px;flex:1 1 300px;min-width:0;height:52px;padding:0 16px; 2599 border:1px solid var(--line2);border-radius:var(--ra);background:var(--panel);font-size:16px} 2600.home2 .uf:focus-within{border-color:var(--ink);box-shadow:0 0 0 3px rgba(15,23,42,.06)} 2601.home2 .uf input{flex:1;min-width:0;border:0;outline:none;font-size:16px;background:none;font-family:var(--body)} 2602.home2 .uf input.shake{animation:home2-shk .42s} 2603@keyframes home2-shk{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}} 2604.home2 .ub{flex:none;height:52px;padding:0 26px;border:0;border-radius:var(--ra);background:var(--brand); 2605 color:#fff;font-size:15px;font-weight:700;cursor:pointer;white-space:nowrap} 2606.home2 .ub:hover{background:var(--brand-d)} 2607.home2 .usug{display:flex;gap:6px;margin-top:9px;flex-wrap:wrap} 2608.home2 .usg{border:1px solid var(--line);background:var(--panel2);border-radius:99px;padding:5px 12px; 2609 font-size:12.5px;color:var(--muted);cursor:pointer} 2610.home2 .usg:hover{border-color:var(--ink);color:var(--ink)} 2611.home2 .ud{font-size:14px;line-height:1.65;color:var(--muted);margin:16px 0 0;max-width:82ch} 2612.home2 .ud .ok2{color:var(--brand-d);font-weight:600} 2613.home2 .ud .no2{color:var(--red);font-weight:600} 2614.home2 .ud b{color:var(--ink)} 2615.home2 .ctac{margin-top:30px;text-align:center} 2616.home2 .ctac .mini{margin-top:12px} 2617.home2 #ask{padding:44px 0 8px;background:none} 2618.home2 .askh{margin:0 0 20px;font-size:clamp(23px,2.6vw,32px);font-weight:700;letter-spacing:-.03em; 2619 line-height:1.15;max-width:26ch;text-wrap:balance} 2620.home2 #ask .ur{max-width:620px} 2621.home2 #ask .ud{margin-top:16px} 2622.home2 .urlcta{border:0;background:none;box-shadow:none;padding:0;margin:0} 2623.home2 #ask .wrap{text-align:center} 2624.home2 .askh{margin:0 auto 22px;max-width:30ch} 2625.home2 #ask .ur{max-width:620px;margin:0 auto;justify-content:center} 2626.home2 #ask .usug{justify-content:center} 2627.home2 #ask .ud{margin:16px auto 0;max-width:78ch;text-align:center} 2628.home2 .askh{max-width:none;margin:0 auto 22px;font-size:clamp(19px,2.25vw,30px);letter-spacing:-.032em; 2629 line-height:1.14;text-wrap:balance;white-space:normal} 2630.home2 #ask .ud{max-width:none;margin:16px auto 0;font-size:clamp(12.5px,1.05vw,14px);line-height:1.6; 2631 text-wrap:balance} 2632@media (max-width:1180px){ 2633.home2 .askh,.home2 #ask .ud{text-wrap:pretty}} 2634.home2 .askh{max-width:none;margin:0 auto 22px;font-size:min(30px,2.4vw);letter-spacing:-.032em; 2635 line-height:1.15;text-wrap:balance} 2636.home2 #ask .ud{max-width:none;margin:16px auto 0;font-size:min(14px,1.15vw);line-height:1.6;text-wrap:balance} 2637@media (min-width:1120px){ 2638.home2 .askh,.home2 #ask .ud{white-space:nowrap;text-wrap:nowrap}} 2639@media (max-width:1119px){ 2640.home2 .askh{font-size:clamp(19px,2.9vw,27px)} 2641.home2 #ask .ud{font-size:13px}} 2642.home2 .chrono{max-width:620px;margin:0 auto 22px;display:flex;flex-direction:column;align-items:center;gap:9px} 2643.home2 .chv{font-family:var(--mono);font-size:34px;font-weight:700;letter-spacing:-.02em;color:var(--ink); 2644 font-variant-numeric:tabular-nums} 2645.home2 .chb{display:block;width:100%;height:5px;background:var(--panel3);border-radius:99px;overflow:hidden} 2646.home2 .chb i{display:block;height:100%;width:0;background:var(--brand);border-radius:99px;transition:width .9s linear} 2647.home2 .chm{display:flex;gap:0;width:100%;justify-content:space-between} 2648.home2 .chm b{font-size:11px;font-weight:500;color:var(--line2);transition:color .3s;white-space:nowrap} 2649.home2 .chm b.on{color:var(--brand-d);font-weight:600} 2650.home2 .chn{font-size:11px;color:var(--dim)} 2651.home2 #after[data-sep]{border-top:1px solid rgba(15,23,42,.09);margin-top:46px} 2652.home2 #after>.sec:first-child{padding-top:70px}
2653.home2 .askend{padding-bottom:70px} 2654.home2 .askend .wrap{text-align:center} 2655.home2 .askh2{margin:0 auto 22px;font-size:min(30px,2.4vw);font-weight:700;letter-spacing:-.032em; 2656 line-height:1.15;max-width:none;text-wrap:balance} 2657.home2 .askend .ur{max-width:620px;margin:0 auto;justify-content:center} 2658.home2 .askend .usug{justify-content:center} 2659.home2 .askend .ud{margin:16px auto 0;max-width:none;text-align:center;font-size:min(14px,1.15vw)} 2660@media (min-width:1120px){ 2661.home2 .askh2,.home2 .askend .ud{white-space:nowrap}} 2662@media (max-width:1119px){ 2663.home2 .askh2{font-size:clamp(19px,2.9vw,27px)} 2664.home2 .askend .ud{font-size:13px;white-space:normal}} 2665@media (max-width:680px){ 2666.home2 .chm b{font-size:9.5px}} 2667.home2 .askend .chrono{margin:26px auto 0} 2668.home2 .reject.one{display:block;max-width:none} 2669.home2 .reject.one .rj{border:1px solid var(--line);border-left:3px solid var(--red); 2670 border-radius:0 var(--rb) var(--rb) 0;padding:22px 26px;background:var(--panel)} 2671.home2 .reject.one .rjh{display:flex;align-items:center;gap:11px;margin-bottom:11px} 2672.home2 .reject.one .rjh b{font-size:20px;font-weight:700;letter-spacing:-.02em} 2673.home2 .rjv{font-size:10.5px;font-weight:700;color:#fff;background:var(--red);border-radius:var(--rs);padding:4px 10px} 2674.home2 .reject.one .rj p{font-size:15px;line-height:1.7;color:var(--muted);margin:0} 2675.home2 .rjs{color:var(--ink);font-weight:600} 2676.home2 .rjfoot{margin:18px 0 0;font-size:16px;font-weight:600;letter-spacing:-.015em} 2677.home2 .dec3.one{grid-template-columns:minmax(0,620px)} 2678.home2 .mkyn{display:flex;gap:10px;padding:16px} 2679.home2 .mkyn span{flex:1;text-align:center;border-radius:var(--ra);padding:14px;font-size:16px;font-weight:700;color:#fff} 2680.home2 .mkyn .y{background:var(--brand)} 2681.home2 .mkyn .n{background:var(--red)} 2682.home2 .mkwhy{padding:12px 16px;border-top:1px solid var(--line);font-size:13px;color:var(--muted);background:var(--panel)} 2683.home2 .mkwhy em{font-style:normal;color:var(--ink);font-weight:600} 2684.home2 #after .sec .eyeb{display:inline-flex;margin-left:auto;margin-right:auto} 2685.home2 #after .sec > .wrap > .eyeb,.home2 #after .sec > .wrap > h2,.home2 #after .sec > .wrap > .lead-l,.home2 #after .sec > .wrap > .lead-w,.home2 #after .sec > .wrap > .sub2{text-align:center} 2686.home2 #after .sec > .wrap > h2{max-width:22ch;margin-left:auto;margin-right:auto;text-wrap:balance} 2687.home2 #after .sec > .wrap > .lead-l,.home2 #after .sec > .wrap > .lead-w{max-width:72ch;margin-left:auto;margin-right:auto;text-wrap:pretty} 2688.home2 #after .sec > .wrap{text-align:center} 2689.home2 #after .dec3,.home2 #after .cov3,.home2 #after .learn,.home2 #after .reject,.home2 #after .prices,.home2 #after .mk,.home2 #after .cvbox,.home2 #after .memo,.home2 #after .vs,.home2 #after .qa{text-align:left} 2690.home2 #after .d3,.home2 #after .cv,.home2 #after .lrnb,.home2 #after .rj,.home2 #after .price{text-align:left} 2691.home2 #after .dec3.one{justify-content:center;margin-left:auto;margin-right:auto} 2692.home2 #after .ctac,.home2 #after .cta-wrap{text-align:center} 2693.home2 #after .cvbox{margin-left:auto;margin-right:auto} 2694.home2 .promise{justify-content:center} 2695.home2 #after .sec > .wrap > h2{max-width:none;font-size:min(34px,2.62vw);letter-spacing:-.038em; 2696 line-height:1.12;margin-left:auto;margin-right:auto} 2697@media (min-width:1120px){ 2698.home2 #after .sec > .wrap > h2{white-space:nowrap}} 2699@media (max-width:1119px){ 2700.home2 #after .sec > .wrap > h2{font-size:clamp(21px,3.1vw,30px);text-wrap:balance}} 2701.home2 #after .sec > .wrap > .big{font-size:min(27px,2.1vw);font-weight:500;color:var(--muted); 2702 letter-spacing:-.02em;line-height:1.3;max-width:none;margin:14px auto 0;text-align:center} 2703.home2 #after .sec > .wrap > .big b{color:var(--ink);font-weight:700} 2704@media (min-width:1120px){ 2705.home2 #after .sec > .wrap > .big{white-space:nowrap}} 2706.home2 .proof{display:flex;flex-direction:column;align-items:center;gap:38px;margin-top:36px} 2707.home2 .pcard{width:min(760px,100%);background:var(--panel);border:1px solid rgba(15,23,42,.07); 2708 border-radius:22px;padding:34px 38px 32px;text-align:left; 2709 box-shadow:0 1px 2px rgba(15,23,42,.04), 0 22px 50px -28px rgba(15,23,42,.28)} 2710.home2 .pctop{display:flex;align-items:center;gap:14px;margin-bottom:22px} 2711.home2 .pcl{font-family:var(--mono);font-size:9.5px;letter-spacing:.2em;color:var(--dim);font-weight:600} 2712.home2 .pcv{margin-left:auto;font-size:11.5px;font-weight:700;color:#fff;background:var(--red); 2713 border-radius:99px;padding:6px 14px;letter-spacing:.01em} 2714.home2 .pcname{font-size:36px;font-weight:700;letter-spacing:-.04em;line-height:1} 2715.home2 .pcdesc{font-size:15.5px;color:var(--muted);margin-top:8px} 2716.home2 .pcq{position:relative;margin:26px 0 0;padding:22px 24px 22px 46px;border-radius:14px; 2717 background:var(--panel2);font-size:18px;line-height:1.72;color:var(--muted); 2718 border:1px solid rgba(15,23,42,.05)} 2719.home2 .pcq::before{content:"â";position:absolute;
2719left:16px;top:12px;font-size:52px;line-height:1; 2720 color:var(--line2);font-family:Georgia,serif} 2721.home2 .pcq b{color:var(--ink);font-weight:600} 2722.home2 .pcfoot{margin:0;font-size:clamp(19px,1.9vw,25px);font-weight:500;color:var(--muted); 2723 line-height:1.42;letter-spacing:-.02em;text-align:center} 2724.home2 .pcfoot b{display:block;color:var(--ink);font-weight:700} 2725.home2 .answer{margin-top:30px;text-align:center} 2726.home2 .ansbig{display:block;font-size:clamp(52px,7vw,96px);font-weight:700;letter-spacing:-.055em; 2727 line-height:.96;color:var(--ink)} 2728.home2 .anssub{margin:20px auto 0;max-width:64ch;font-size:clamp(16px,1.35vw,19px);line-height:1.65; 2729 color:var(--muted)} 2730.home2 .anssub b{color:var(--ink);font-weight:600} 2731.home2{ 2732 --surf-b:1px solid rgba(15,23,42,.07); 2733 --surf-r:20px; 2734 --surf-s:0 1px 2px rgba(15,23,42,.04), 0 22px 50px -30px rgba(15,23,42,.26); 2735 --surf-h:0 1px 2px rgba(15,23,42,.05), 0 30px 62px -30px rgba(15,23,42,.34); 2736} 2737.home2 #after .d3,.home2 #after .cv,.home2 #after .lrnb,.home2 #after .price,.home2 #after .cvbox,.home2 #after .memo,.home2 #after .rj,.home2 #after .s3,.home2 #after .qai,.home2 #after .mock,.home2 .kpi,.home2 .urlcta{ 2738 border:var(--surf-b);border-radius:var(--surf-r);background:var(--panel); 2739 box-shadow:var(--surf-s);transition:box-shadow .22s ease, transform .22s ease} 2740.home2 #after .d3:hover,.home2 #after .cv:hover,.home2 #after .lrnb:hover,.home2 #after .price:hover,.home2 .kpi:hover{ 2741 box-shadow:var(--surf-h);transform:translateY(-2px)} 2742.home2 #after .mock{border-radius:14px;box-shadow:none;border:1px solid rgba(15,23,42,.06); 2743 background:var(--panel2);overflow:hidden} 2744.home2 #after .d3 .mock,.home2 #after .cv .mock{margin-top:18px} 2745.home2 #after .d3,.home2 #after .cv,.home2 #after .lrnb{padding:28px} 2746.home2 #after .price{padding:30px} 2747.home2 .kpi{padding:26px} 2748.home2 #after .qai{padding:26px;border-top:var(--surf-b)} 2749.home2 #after .lrnb.hi{border-color:rgba(14,138,79,.35); 2750 box-shadow:0 0 0 4px rgba(14,138,79,.07), var(--surf-s)} 2751.home2 #after .rj{border-left:3px solid var(--red);border-radius:0 var(--surf-r) var(--surf-r) 0} 2752.home2 #after .mk a{border:var(--surf-b);border-radius:12px;background:var(--panel); 2753 box-shadow:0 1px 2px rgba(15,23,42,.03);transition:box-shadow .2s,border-color .2s} 2754.home2 #after .mk a:hover{box-shadow:var(--surf-s);border-color:rgba(15,23,42,.14)} 2755.home2 .promise{border:var(--surf-b);border-radius:var(--surf-r);background:var(--panel); 2756 box-shadow:var(--surf-s);padding:26px 10px} 2757.home2 .promise i{background:rgba(15,23,42,.08)} 2758.home2 .uf{border:var(--surf-b);border-radius:14px;box-shadow:0 1px 2px rgba(15,23,42,.04)} 2759.home2 .uf:focus-within{border-color:rgba(15,23,42,.24);box-shadow:0 0 0 4px rgba(15,23,42,.05)} 2760.home2 .ub{border-radius:14px;box-shadow:0 2px 4px rgba(14,138,79,.22), 0 10px 24px -12px rgba(14,138,79,.6)} 2761.home2 .bigcta{border-radius:14px;box-shadow:0 2px 4px rgba(15,23,42,.12), 0 14px 30px -14px rgba(15,23,42,.55)} 2762.home2 .promise{border:0;box-shadow:none;background:none;padding:26px 0} 2763.home2 .promise i{background:var(--line)} 2764.home2 .kpis .kpi{border:0;box-shadow:none;background:none;padding:18px 0;transform:none} 2765.home2 .kpis .kpi:hover{box-shadow:none;transform:none} 2766.home2 .kpis{border-top:1px solid var(--line);border-bottom:1px solid var(--line); 2767 padding:6px 0;margin:26px auto 0} 2768.home2 .kpis .kpi+.kpi{border-left:1px solid var(--line);padding-left:26px} 2769.home2 .pricenote,.home2 .pricefoot,.home2 .priceleg,.home2 #tarifs .note,.home2 #tarifs .legal{ 2770 border:0!important;box-shadow:none!important;background:none!important;padding:0!important} 2771.home2 #after .under{border:0!important;box-shadow:none!important;background:none!important; 2772 padding:0!important;margin-top:26px;text-align:center;font-size:14px;color:var(--muted); 2773 line-height:1.65;max-width:74ch;margin-left:auto;margin-right:auto} 2774.home2 #after .under b{color:var(--ink);font-weight:600} 2775.home2 #after .under .ment{margin-top:10px;font-size:12px;color:var(--dim);line-height:1.6} 2776.home2 .kpi{border:0!important;box-shadow:none!important;background:none!important;padding:18px 0!important} 2777.home2 .kpi:hover{box-shadow:none!important;transform:none!important} 2778.home2 .covwrap{margin-top:34px;display:flex;flex-direction:column;align-items:center;gap:30px} 2779.home2 .covgauge{width:min(720px,100%)} 2780.home2 .covtop{display:flex;align-items:baseline;gap:14px;margin-bottom:14px} 2781.home2 .covtop b{font-size:clamp(46px,5vw,68px);font-weight:700;letter-spacing:-.055em;line-height:1} 2782.home2 .covtop em{font-style:normal;font-size:19px;color:var(--muted);font-weight:500} 2783.home2 .covtop span{margin-left:auto;font-family:var(--mono);font-size:12px;letter-spacing:.14em;color:var(--dim)} 2784.home2 .covbar{height:12px;border-radius:99px;background:var(--panel3);overflow:hidden; 2785 box-shadow:inset 0 1px 2px rgba(15,23,42,.06)} 2786.home2 .covbar i{display:block;height:100%;border-radius:99px; 2787 background:linear-gradient(90deg,var(--brand),#3ECF8E)} 2788.home2 .covlbl{display:flex;justify-content:space-between;margin-top:10px;font-size:13px;color:var(--muted)} 2789.home2 .covline{font-size:clamp(17px,1.6vw,21px);line-height:1.55;color:var(--muted); 2790 max-width:66ch;text-align:center;margin:0} 2791.home2 .covline b{color:var(--ink);font-weight:700} 2792.home2 .kpis{background:none!important;gap:0!important;border:0!important; 2793 border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important; 2794 border-radius:0!important;padding:4px 0!important;margin:30px auto 0!important; 2795 max-width:none;box-shadow:none!important;overflow:visible} 2796.home2 .kpis .kpi{border:0!important;background:none!important;box-shadow:none!important; 2797 padding:20px 24px!important;text-align:center} 2798.home2 .kpis .kpi+.kpi{box-shadow:inset 1px 0 0 var(--line)!important} 2799.home2 .kpis .kpi b{display:block;font-size:clamp(30px,3vw,42px);font-weight:700;letter-spacing:-.05em;line-height:1}
2800.home2 .kpis .kpi span{display:block;margin-top:9px;font-size:13.5px;color:var(--muted);line-height:1.4} 2801.home2 #after .sec .eyeb{display:flex;flex-direction:column;align-items:center;gap:11px; 2802 background:none;box-shadow:none;padding:0;margin:0 auto 20px; 2803 font-family:var(--body);font-size:12.5px;font-weight:600;letter-spacing:.2em; 2804 text-transform:uppercase;color:var(--brand-d);line-height:1} 2805.home2 #after .sec .eyeb i{display:block;width:30px;height:2px;background:var(--brand); 2806 border-radius:2px;flex:none;margin:0} 2807.home2 #after .sec .eyeb .eyn{display:none}`,G3=` 2808.home2{background:#F8FAFC} 2809.home2-appwrap{max-width:1240px;margin:0 auto;padding:0 30px} 2810.home2-app{background:#fff;border:1px solid #E2E8F0} 2811@media (max-width:1400px){.home2-appwrap{max-width:none;padding:0}.home2-app{border-left:0;border-right:0}} 2812`,W3={hero:{h1:"Nous trouvons vos prochaines cibles à acquérir.",subPre:"Avec ",subB:"Stan",subPost:", notre AI Corporate Developer.",claimPre:"Votre Corporate Developer ne vous demandera que ",claimB:"5 à 10 décisions par mois",claimPost:", tranchées depuis votre téléphone. Le reste, Stan s'en occupe.",cue:"Commencez par en évaluer une ",promise:[["5â10","décisions par mois"],["489","dossiers traités sans vous"],["2 min","par décision, sur téléphone"]]},leadin:{b:"Voici les cibles de nos clients : plus de 1 000 sociétés rachetables, entrées de ce matin comprises.",rest:" Les vôtres restent à faire.",li2:"Choisissez une société, cliquez Ãvaluer â Stan étudie votre présence en ligne et en déduit vos critères."},chrono:{ready:"PRÃT",milestones:[[8,"site lu"],[16,"critères posés"],[32,"marché criblé"],[45,"premiers mémos"]],note:"démonstration accélérée · 45 min réelles"},ask:{h2:"Ces cibles sont celles de nos clients. Les vôtres se construisent en quarante-cinq minutes.",placeholder:"votre-entreprise.fr",cta:"Voir mon deal flow â",ud1:"Stan lit votre présence en ligne, en déduit vos critères d'acquisition, puis vous rend chaque matin les sociétés ",udOk:"retenues",udAnd:" et ",udNo:"écartées",ud2:", avec leurs motifs. ",udB:"Trois analyses offertes."},askend:{h2:"Vous avez lu jusqu'ici. Vos cibles tiennent en une adresse.",placeholder:"votre-entreprise.fr",cta:"Générer mon deal flow â",ud1:"Quarante-cinq minutes avec un Corporate Developer. Vous repartez avec vos premières sociétés ",udOk:"retenues",ud2:", leurs motifs, et ",udB:"trois mémos chiffrés",ud3:"."},tri:{h2:"Sur 495 sociétés rachetables, une poignée mérite votre décision.",bigPre:"Ce qui a de la valeur n'est pas la liste. ",bigB:"C'est le tri.",kpis:[["495","sociétés sur votre marché"],["45","retenues par Stan, avec la raison"],["23","analysées, mémo chiffré à l'appui"],["5â10","arrivent jusqu'à votre décision"]],p1a:"Stan élimine 87 % du travail avant qu'il n'atteigne votre bureau. Et il écrit pourquoi : chaque société écartée porte son motif, en une phrase. ",p1b:"C'est ce qu'aucune base de données ne fait",p1c:" â une base vous donne une liste, elle ne vous dit jamais ce qu'elle a éliminé pour vous, ni pourquoi.",frieze:[["RETENUES AU CRIBLE","Retenues"],["MÃMO PRODUIT","Analysées"],["VOTRE DÃCISION","à trancher"],["VOS OUI","Validées"]],p2a:"Chaque lundi, vous recevez votre shortlist, ",p2b:"annotée par votre Corporate Developer",p2c:" : uniquement les dossiers qui méritent un arbitrage. Vous répondez oui ou non. Vos oui affinent Stan pour la semaine suivante.",claim:"Stan travaille. Nous vérifions. Vous décidez."},mecanique:{eyeb:"La mécanique",h2:"Une décision tient en deux boutons.",lead:"Le dossier part le jour où il entre. Notification, mémo, oui ou non.",d3t:"Deux boutons, une ligne de motif",d3pA:"OUI part en approche, NON part en écartées avec sa raison. ",d3pB:"Rien d'autre ne vous est demandé.",d3pC:" Et si vous ne tranchez pas, Stan groupe les dossiers en attente et vous appelle.",mockYes:"â OUI",mockNo:"â NON",whyPre:"Pourquoi ? ",whyEm:"hors fourchette de valorisation",lead2:"Et chaque lundi matin, un email vous dit ce qui vous attend â ou que la semaine est calme."},couverture:{eyeb:"La couverture",h2:"Toutes les sociétés que vous pourriez racheter. Pas un échantillon.",pct:"18 %",pctLbl:"de votre marché déjà criblé",count:"250 SUR ~1 400",lblLeft:"Aujourd'hui",lblRight:"+12 nouvelles s
2812ociétés par mois",lineB1:"1 pour 1",line1:" â chaque société retenue obtient son analyse chiffrée. Pas les plus grosses : ",lineB2:"toutes",line2:"."},preuve:{eyeb:"La preuve du tri",h2:"L'onglet que personne d'autre ne vous montre.",p1a:"Une base de données vous donne une liste et vous laisse la trier. Stan vous donne aussi ",p1b:"ce qu'il a écarté, et pourquoi",p1c:". C'est ce qui sépare un annuaire d'un analyste : vous pouvez contester une décision, donc vous pouvez lui faire confiance.",pcl:"CRIBLE · CRITÃRE A",pcv:"â Ãcartée",pcname:"Instinctdigital",pcdesc:"Solutions de reporting numérique pour sociétés de gestion",pcqA:"Un service logiciel â ",pcqB:"et non",pcqC:" un courtage en assurance, un conseil en risques, un placement d'assurance d'entreprise ou une intermédiation financière pour clients corporate.",footA:"Une société écartée sans motif,",footB:"c'est une société qu'on n'a pas lue."},concurrent:{eyeb:"Le vrai concurrent",h2:"Qui, chez vous, est capable de couvrir l'ensemble des cibles rachetables ?",big:"Personne.",subA:"Pas faute de compétence â faute de nuits.",subB:"Votre concurrent n'est pas un autre logiciel : c'est le fait que personne ne regarde."},cred:{lbl:"Là où notre équipe a déployé du capital",logos:["partech","ARDIAN","Google","MIRAKL","leboncoin"],txt:"à tous les stades d'investissement â Seed, Venture, Growth, LBO, M&A â pour des grands comptes, des startups de premier plan et des fonds de référence.",q:"Stan applique ce jugement à votre marché, chaque nuit, sans se fatiguer."},demarrage:{eyeb:"Le démarrage",h2:"Quarante-cinq minutes, et il tourne.",leadA:"Stan lit votre présence en ligne et en déduit trois angles d'acquisition ; vous les corrigez ; il crible votre marché pendant l'appel. ",leadB:"Vous repartez avec vos premières sociétés retenues, leur
2812s motifs et trois mémos chiffrés.",leadC:" Ensuite, chaque ð et chaque OUI rapprochent son crible du vôtre.",cta:"Planifier votre appel",mini:"Sans engagement · trois analyses offertes"},tarifs:{eyeb:"Les offres",h2:"Une couverture totale, et un tri fait comme vous le feriez.",lead:"Les trois offres criblent le même marché et rendent les mêmes verdicts. Seul change le nombre de mémos produits chaque matin â donc le délai avant d'avoir un avis sur chaque cible retenue."}},Q3={hero:{h1:"We find your next acquisition targets.",subPre:"With ",subB:"Stan",subPost:", our AI Corporate Developer.",claimPre:"Your Corporate Developer will only ask you for ",claimB:"5 to 10 decisions a month",claimPost:", made from your phone. Stan takes care of the rest.",cue:"Start by evaluating one ",promise:[["5â10","decisions a month"],["489","files handled without you"],["2 min","per decision, on your phone"]]},leadin:{b:"Here are our clients' targets: more than 1,000 acquirable companies, this morning's entries included.",rest:" Yours are still to be built.",li2:"Pick a company, click Evaluate â Stan studies your online presence and derives your criteria."},chrono:{ready:"READY",milestones:[[8,"site read"],[16,"criteria set"],[32,"market screened"],[45,"first memos"]],note:"accelerated demo · 45 real minutes"},ask:{h2:"These targets are our clients'. Yours take forty-five minutes to build.",placeholder:"your-company.com",cta:"See my deal flow â",ud1:"Stan reads your online presence, derives your acquisition criteria, then hands you each morning the companies ",udOk:"kept",udAnd:" and ",udNo:"discarded",ud2:", with their reasons. ",udB:"Three free analyses."},askend:{h2:"You've read this far. Your targets fit in one address.",placeholder:"your-company.com",cta:"Generate my deal flow â",ud1:"Forty-five minutes with a Corporate Developer. You leave with your first companies ",udOk:"kept",ud2:", their reasons, and ",udB:"three quantified memos",ud3:"."},tri:{h2:"Out of 495 acquirable companies, a handful deserves your decision.",bigPre:"What has value is not the list. ",bigB:"It's the sorting.",kpis:[["495","companies on your market"],["45","kept by Stan, with the reason"],["23","analysed, quantified memo attached"],["5â10","reach your decision"]],p1a:"Stan eliminates 87% of the work before it reaches your desk. And he writes down why: every discarded company carries its reason, in one sentence. ",p1b:"That's what no database does",p1c:" â a database gives you a list; it never tells you what it eliminated for you, nor why.",frieze:[["KEPT AT SCREENING","Kept"],["MEMO PRODUCED","Analysed"],["YOUR DECISION","To decide"],["YOUR YESES","Validated"]],p2a:"Every Monday, you receive your shortlist, ",p2b:"annotated by your Corporate Developer",p2c:": only the files that deserve a call. You answer yes or no. Your yeses refine Stan for the following week.",claim:"Stan works. We check. You decide."},mecanique:{eyeb:"The mechanics",h2:"A decision fits in two buttons.",lead:"The file goes out the day it comes in. Notification, memo, yes or no.",d3t:"Two buttons, one line of reason",d3pA:"YES goes to approach, NO goes to discarded with its reason. ",d3pB:"Nothing else is asked of you.",d3pC:" And if you don't decide, Stan groups the pending files and calls you.",mockYes:"â YES",mockNo:"â NO",whyPre:"Why? ",whyEm:"outside the valuation range",lead2:"And every Monday morning, an email tells you what awaits you â or that the week is quiet."},couverture:{eyeb:"The coverage",h2:"Every company you could acquire. Not a sample.",pct:"18%",pctLbl:"of your market already screened",count:"250 OF ~1,400",lblLeft:"Today",lblRight:"+12 new companies a month",lineB1:"1 for 1",line1:" â every kept company gets its quantified analysis. Not the biggest ones: ",lineB2:"all of them",line2:"."},preuve:{eyeb:"The proof of sorting",h2:"The tab nobody else shows you.",p1a:"A database gives you a list and leaves the sorting to you. Stan also gives you ",p1b:"what he discarded, and why",p1c:". That's what separates a directory from an analyst: you can challenge a decision, so you can trust it.",pcl:"SCREENING · CRITERION A",pcv:"â Discarded",pcname:"Instinctdigital",pcdesc:"Digital reporting solutions for asset management companies",pcqA:"A software service â ",pcqB:"and not",pcqC:" an insurance brokerage, a risk consultancy, a corporate insurance placement or a financial intermediation for corporate clients.",footA:"A company discarded without a reason",footB:"is a company that was never read."},concurrent:{eyeb:"The real competitor",h2:"Who, in your company, can cover every acquirable target?",big:"Nobody.",subA:"Not for lack of skill â for lack of nights.",subB:"Your competitor isn't another piece of software: it's the fact that nobody is looking."},cred:{lbl:"Where our team has deployed capital",logos:["partech","ARDIAN","Google","MIRAKL","leboncoin"],txt:"At every investment stage â Seed, Venture, Growth, LBO, M&A â for large accounts, leading startups and reference funds.",q:"Stan applies that judgment to your market, every night, without tiring."},demarrage:{eyeb:"Getting started",h2:"Forty-five minutes, and it runs.",leadA:"Stan reads your online presence and derives three acquisition angles; you correct them; he screens your market during the call. ",leadB:"You leave with your first kept companies, their reasons and three quantified memos.",leadC:" Then every ð and every YES bring his screening closer to yours.",cta:"Book your call",mini:"No commitment · three free analyses"},tarifs:{eyeb:"The plans",h2:"Total coverage, and a sorting done the way you would do it.",lead:"All three plans screen the same market and return the same verdicts. Only the number of memos produced each morning changes â hence the wait before having an opinion on every kept target."}},cn={en:Q3,fr:W3};function Z3(){const{lang:t}=ae(),n=cn[t],r=()=>{var i;(i=document.getElementById("atelier"))==null||i.scrollIntoView({behavior:"smooth"})};return e.jsxs("div",{id:"heroSec",children:[e.jsxs("div",{className:"wrap hero",children:[e.jsx("h1",{children:n.hero.h1}),e.jsxs("div",{className:"sub",children:[n.hero.subPre,e.jsx("b",{children:n.hero.subB}),n.hero.subPost]}),e.jsxs("div",{className:"claim2",children:[n.hero.claimPre,e.jsx("b",{children:n.hero.claimB}),n.hero.claimPost]}),e.jsxs("button",{className:"cue",onClick:r,children:[n.hero.cue,e.jsx("span",{className:"ar",children:"â"})]}),e.jsx("div",{className:"promise",children:n.hero.promise.map(([i,s],a)=>e.jsxs(m.Fragment,{children:[a>0&&e.jsx("i",{}),e.jsxs("span",{children:[e.jsx("b",{children:i}),s]})]},s))})]}),e.jsxs("div",{className:"wrap leadin",id:"leadin",children:[e.jsx("b",{children:n.leadin.b}),n.leadin.rest,e.jsx("span",{className:"li2",children:n.leadin.li2})]})]})}const K3=m.lazy(()=>Vr(()=>import("./AtelierV2Section-Cua_IQbO.js"),__vite__mapDeps([0,1,2,3,4]))),nc="min(880px,86vh)";function J3(){const t=m.useRef(null),[n,r]=m.useState(!1);return m.useEffect(()=>{const i=t.current;if(!i)return;const s=new IntersectionObserver(a=>{a[0]&&a[0].isIntersecting&&(r(!0),s.disconnect())},{rootMargin:"600px"});return s.observe(i),()=>s.disconnect()},[]),e.jsxs(e.Fragment,{children:[e.jsx("div",{id:"atelier"}),e.jsx("div",{className:"home2-appwrap",ref:t,children:e.jsx("div",{className:"home2-app",style:{"--atelier-h":nc},children:n?e.jsx(m.Suspense,{fallback:e.jsx("div",{style:{height:nc}}),children:e.jsx(K3,{demo:!0})}):e.jsx("div",{style:{height:nc}})})})]})}let vs=0,rs;const Ga=new Set;function $3(t){return Ga.add(t),rs||(rs=setInterval(()=>{vs+=1,vs>52&&(vs=0),Ga.forEach(n=>n())},1e3)),()=>{Ga.delete(t),!Ga.size&&rs&&(clearInterval(rs),rs=void 0,vs=0)}}const $h=()=>vs;function Xh(){const{lang:t}=ae(),n=cn[t].chrono,r=m.useSyncExternalStore($3,$h,$h),i=Math.max(0,45-r);return e.jsxs("div",{className:"chrono",children:[e.jsx("span",{className:"chv",children:i?`${String(i).padStart(2,"0")}:00`:n.ready}),e.jsx("span",{className:"chb",children:e.jsx("i",{style:{width:`${Math.min(100,r/45*100)}%`}})}),e.jsx("span",{className:"chm",children:n.milestones.map(([s,a])=>e.jsx("b",{"data-at":s,className:r>=s?"on":void 0,children:a},s))}),e.jsx("span",{className:"chn",children:n.note})]})}function em({variant:t}){const{lang:n}
2812=ae(),r=cn[n];return t==="mid"?e.jsx("div",{id:"ask",children:e.jsxs("div",{className:"wrap",children:[e.jsx("h2",{className:"askh",children:r.ask.h2}),e.jsx(Xh,{}),e.jsx(ta,{placeholder:r.ask.placeholder,cta:r.ask.cta}),e.jsxs("p",{className:"ud",children:[r.ask.ud1,e.jsx("b",{className:"ok2",children:r.ask.udOk}),r.ask.udAnd,e.jsx("b",{className:"no2",children:r.ask.udNo}),r.ask.ud2,e.jsx("b",{children:r.ask.udB})]})]})}):e.jsx("div",{className:"sec askend",children:e.jsxs("div",{className:"wrap",children:[e.jsx("h2",{className:"askh2",children:r.askend.h2}),e.jsx(ta,{placeholder:r.askend.placeholder,cta:r.askend.cta}),e.jsxs("p",{className:"ud",children:[r.askend.ud1,e.jsx("b",{className:"ok2",children:r.askend.udOk}),r.askend.ud2,e.jsx("b",{children:r.askend.udB}),r.askend.ud3]}),e.jsx(Xh,{})]})})}function X3(){const{lang:t}=ae(),n=cn[t].tri;return e.jsx("div",{className:"sec",children:e.jsxs("div",{className:"wrap",children:[e.jsx("h2",{children:n.h2}),e.jsxs("p",{className:"big",children:[n.bigPre,e.jsx("b",{children:n.bigB})]}),e.jsx("div",{className:"kpis",children:n.kpis.map(([r,i],s)=>e.jsxs("div",{className:s===3?"kpi hi":"kpi",children:[e.jsx("b",{children:r}),e.jsx("span",{children:i})]},i))}),e.jsxs("p",{children:[n.p1a,e.jsx("b",{children:n.p1b}),n.p1c]}),e.jsx("div",{className:"frieze",children:n.frieze.map(([r,i],s)=>e.jsxs("div",{className:"fs",style:s<3?{"--c":`var(--p${s+1})`,"--tc":"var(--ink)"}:{"--c":"var(--p4)"},children:[e.jsx("div",{className:"l",children:r}),e.jsx("div",{className:"d",children:i})]},r))}),e.jsxs("p",{children:[n.p2a,e.jsx("b",{children:n.p2b}),n.p2c]}),e.jsx("div",{className:"claim",children:n.claim})]})})}function e5(){const{lang:t}=ae(),n=cn[t].mecanique;return e.jsx("div",{className:"sec",children:e.jsxs("div",{className:"wrap",children:[e.jsxs("div",{className:"eyeb",children:[e.jsx("i",{}),n.eyeb]}),e.jsx("h2",{children:n.h2}),e.jsx("p",{className:"lead-l",children:n.lead}),e.jsx("div",{className:"dec3 one",children:e.jsxs("div",{className:"d3",children:[e.jsxs("div",{className:"d3h",children:[e.jsx("b",{children:"1"}),e.jsx("span",{children:n.d3t})]}),e.jsxs("p",{children:[n.d3pA,e.jsx("b",{children:n.d3pB}),n.d3pC]}),e.jsxs("div",{className:"mock",children:[e.jsxs("div",{className:"mkyn",children:[e.jsx("span",{className:"y",children:n.mockYes}),e.jsx("span",{className:"n",children:n.mockNo})]}),e.jsxs("div",{className:"mkwhy",children:[n.whyPre,e.jsx("em",{children:n.whyEm})]})]})]})}),e.jsx("p",{className:"lead-l",style:{marginTop:26,fontSize:14},children:n.lead2})]})})}function t5(){const{lang:t}=ae(),n=cn[t].couverture;return e.jsx("div",{className:"sec",children:e.jsxs("div",{className:"wrap",children:[e.jsxs("div",{className:"eyeb",children:[e.jsx("i",{}),n.eyeb]}),e.jsx("h2",{children:n.h2}),e.jsxs("div",{className:"covwrap",children:[e.jsxs("div",{className:"covgauge",children:[e.jsxs("div",{className:"covtop",children:[e.jsx("b",{children:n.pct}),e.jsx("em",{children:n.pctLbl}),e.jsx("span",{children:n.count})]}),e.jsx("div",{className:"covbar",children:e.jsx("i",{style:{width:"18%"}})}),e.jsxs("div",{className:"covlbl",children:[e.jsx("span",{children:n.lblLeft}),e.jsx("span",{children:n.lblRight})]})]}),e.jsxs("p",{className:"covline",children:[e.jsx("b",{children:n.lineB1}),n.line1,e.jsx("b",{children:n.lineB2}),n.line2]})]})]})})}function n5(){const{lang:t}=ae(),n=cn[t].preuve;return e.jsx("div",{className:"sec",children:e.jsxs("div",{className:"wrap",children:[e.jsxs("div",{className:"eyeb",children:[e.jsx("i",{}),n.eyeb]}),e.jsx("h2",{children:n.h2}),e.jsxs("p",{children:[n.p1a,e.jsx("b",{children:n.p1b}),n.p1c]}),e.jsxs("div",{className:"proof",children:[e.jsxs("div",{className:"pcard",children:[e.jsxs("div",{className:"pctop",children:[e.jsx("span",{className:"pcl",children:n.pcl}),e.jsx("span",{className:"pcv",children:n.pcv})]}),e.jsx("div",{className:"pcname",children:n.pcname}),e.jsx("div",{className:"pcdesc",children:n.pcdesc}),e.jsxs("blockquote",{className:"pcq",children:[n.pcqA,e.jsx("b",{children:n.pcqB}),n.pcqC]})]}),e.jsxs("p",{className:"pcfoot",children:[n.footA,e.jsx("br",{}),e.jsx("b",{children:n.footB})]})]})]})})}function r5(){const{lang:t}=ae(),n=cn[t].concurrent;return e.jsx("div",{className:"sec alt",children:e.jsxs("div",{className:"wrap",children:[e.jsxs("div",{className:"eyeb",children:[e.jsx("i",{}),n.eyeb]}),e.jsx("h2",{children:n.h2}),e.jsxs("div",{className:"answer",children:[e.jsx("span",{className:"ansbig",children:n.big}),e.jsxs("p",{className:"anssub",children:[n.subA,e.jsx("br",{}),e.jsx("b",{children:n.subB})]})]})]})})}function i5(){const{lang:t}=ae(),n=cn[t].cred;return e.jsx("div",{className:"sec cred",children:e.jsxs("div",{className:"wrap",children:[e.jsx("div",{className:"credlbl",children:n.lbl}),e.jsx("div",{className:"logos",children:n.logos.map(r=>e.jsx("span",{children:r},r))}),e.jsx("p",{className:"credtxt",children:n.txt}),e.jsx("p",{className:"credq",children:n.q})]})})}function s5(){const{lang:t}=ae(),{openRdv:n}=pl(),r=cn[t].demarrage;return e.jsx("div",{className:"sec",children:e.jsxs("div",{className:"wrap",children:[e.jsxs("div",{className:"eyeb",children:[e.jsx("i",{}),r.eyeb]}),e.jsx("h2",{children:r.h2}),e.jsxs("p",{className:"lead-l",children:[r.leadA,e.jsx("b",{children:r.leadB}),r.leadC]}),e.jsxs("div",{className:"ctac",children:[e.jsx("button",{className:"bigcta",onClick:()=>n(),children:r.cta}),e.jsx("div",{className:"mini",children:r.mini})]})]})})}const a5={cards:[{name:"Essai",amount:"0 â¬",per:"Sans carte bancaire, sans engagement",gauge:{label:"DÃLAI AVANT COUVERTURE COMPLÃTE DU MARCHÃ",width:"28%",value:"~2 semaines",note:"3 mémos par jour à la demande â vos 45 retenues analysées en deux semaines"},li:[[{t:"Donnez votre site : Stan étudie toute votre présence en ligne, déduit vos critères et lance le sourcing"}
2812],[{t:"Votre marché criblé, sur autant d'angles que vous voulez suivre"}],[{t:"Chaque société "},{t:"retenue",k:"vok"},{t:" ou "},{t:"écartée",k:"vno"},{t:", avec la raison écrite"}],[{t:"Votre deal flow complet, dont les dix premières cibles en clair"}],[{t:"Le mémo de votre meilleure cible, offert",k:"b"}]],cta:"â¡ Ãvaluer une cible maintenant",action:"trial"},{hi:!0,badge:"Le plus choisi",name:"Standard",amount:"20 400 â¬",sYear:"/ an",per:"+ 5 000 ⬠de mise en route, une fois",fine:{pre:"Payable à l'année â ",b:"18 360 â¬, soit â10 %",l2:"ou par trimestre â 5 100 â¬",l3:"Engagement 12 mois · tarifs HT"},gauge:{label:"DÃLAI AVANT COUVERTURE COMPLÃTE DU MARCHÃ",width:"74%",value:"au fil de l'eau",note:"3 instantanés chaque matin + 1 détaillé â le flux absorbé, l'arriéré résorbé"},li:[[{t:"Votre thèse calée avec nous, puis affinée chaque semaine"}],[{t:"Vos premiers dossiers retenus analysés dès la mise en route",k:"b"},{t:" â vous démarrez sans arriéré"}],[{t:"Stan tourne chaque nuit : chaque société de votre marché retenue ou écartée, avec la raison"}],[{t:"Pour chaque cible retenue, votre séquence d'approche rédigée à partir de son actualité"}],[{t:"Votre brief quotidien : l'actualité M&A et les levées de votre marché"}],[{t:"Chaque lundi, votre shortlist annotée : uniquement les dossiers à arbitrer"}]],cta:"Planifier votre appel stratégique",action:"rdv"},{name:"Entreprise",amount:"36 000 â¬",sYear:"/ an",per:"+ 15 000 ⬠de mise en route, une fois",fine:{pre:"Payable à l'année â ",b:"32 400 â¬, soit â10 %",l2:"ou par trimestre â 9 000 â¬",l3:"Engagement 12 mois · tarifs HT"},gauge:{label:"DÃLAI AVANT COUVERTURE COMPLÃTE DU MARCHÃ",width:"100%",value:"aucune attente",note:"8 instantanés + 2 détaillés â marché entier couvert, sans jamais attendre"},li:[[{t:"Tout le Standard, plus :"}],[{t:"Stan s'intègre à vos outils de deal flow et évalue vos dossiers déjà en cours"}],[{t:"Jusqu'à 40 séquences d'approche rédigées par mois"}],[{t:"Un Corporate Developer joignable, qui relit vos dossiers sensibles"}]],cta:"Planifier votre appel stratégique",action:"rdv"}],under:{b:"Besoin de plus de mémos ?",rest:" Vos dossiers retenus en attente peuvent être analysés à tout moment, sans changer d'offre.",ment:"Tarifs HT. Reconduction tacite à l'issue des 12 mois, résiliable avec 3 mois de préavis. Indexation annuelle applicable."}},o5={cards:[{name:"Trial",amount:"0 â¬",per:"No credit card, no commitment",gauge:{label:"TIME TO FULL MARKET COVERAGE",width:"28%",value:"~2 weeks",note:"3 memos a day on demand â your 45 kept targets analysed in two weeks"},li:[[{t:"Give your site: Stan studies your entire online presence, derives your criteria and starts the sourcing"}],[{t:"Your market screened, on as many angles as you want to follow"}],[{t:"Every company "},{t:"kept",k:"vok"},{t:" or "},{t:"discarded",k:"vno"},{t:", with the reason in writing"}],[{t:"Your complete deal flow, with the first ten targets in the clear"}],[{t:"The memo of your best target, free",k:"b"}]],cta:"â¡ Evaluate a target now",action:"trial"},{hi:!0,badge:"The most chosen",name:"Standard",amount:"20 400 â¬",sYear:"/ year",per:"+ 5 000 ⬠onboarding, one time",fine:{pre:"Payable yearly â ",b:"18 360 â¬, i.e. â10%",l2:"or per quarter â 5 100 â¬",l3:"12-month commitment · prices excl. VAT"},gauge:{label:"TIME TO FULL MARKET COVERAGE",width:"74%",value:"as-you-go",note:"3 snapshots every morning + 1 detailed â the flow absorbed, the backlog cleared"},li:[[{t:"Your thesis set with us, then refined every week"}],[{t:"Your first kept files analysed from onboarding",k:"b"},{t:" â you start with no backlog"}],[{t:"Stan runs every night: every company on your market kept or discarded, with the reason"}],[{t:"For every kept target, your outreach sequence drafted from its news"}],[{t:"Your daily brief: the M&A news and fundraises of your market"}],[{t:"Every Monday, your annotated shortlist: only the files left to arbitrate"}]],cta:"Book your strategy call",action:"rdv"},{name:"Enterprise",amount:"36 000 â¬",sYear:"/ year",per:"+ 15 000 ⬠onboarding, one time",fine:{pre:"Payable yearly â ",b:"32 400 â¬, i.e. â10%",l2:"or per quarter â 9 000 â¬",l3:"12-month commitment · prices excl. VAT"},gauge:{label:"TIME TO FULL MARKET COVERAGE",width:"100%",value:"no wait",note:"8 snapshots + 2 detailed â the whole market covered, without ever waiting"},li:[[{t:"Everything in Standard, plus:"}],[{t:"Stan plugs into your deal-flow tools and evaluates your files already in progress"}],[{t:"Up to 40 outreach sequences drafted per month"}],[{t:"A reachable Corporate Developer, who re-reads your sensitive files"}]],cta:"Book your strategy call",action:"rdv"}],under:{b:"Need more memos?",rest:" Your kept files awaiting analysis can be analysed at any time, without changing plans.",ment:"Price
2812s excl. VAT. Tacit renewal at the end of the 12 months, cancellable with 3 months' notice. Annual indexation applicable."}},l5={en:o5,fr:a5};function c5(){const{lang:t}=ae(),{openRdv:n}=pl(),r=cn[t].tarifs;return e.jsx("div",{className:"sec",id:"tarifs",children:e.jsxs("div",{className:"wrap",children:[e.jsxs("div",{className:"eyeb",children:[e.jsx("i",{}),r.eyeb]}),e.jsx("h2",{children:r.h2}),e.jsx("p",{className:"lead-w",children:r.lead}),e.jsx(hl,{context:"home",copy:l5,onTrialCta:()=>{var i;return(i=document.getElementById("atelier"))==null?void 0:i.scrollIntoView({behavior:"smooth"})},onRdvCta:()=>n()})]})})}function d5(){return ht({en:{title:"Proplace â Home (v2 archive)",description:"Archived previous version of the Proplace home page."},fr:{title:"Proplace â Accueil (archive v2)",description:"Version précédente archivée de la page dâaccueil Proplace."}}),m.useEffect(()=>{try{ha()}catch{}},[]),m.useEffect(()=>{const t=document.createElement("meta");return t.name="robots",t.content="noindex,nofollow",document.head.appendChild(t),()=>{try{document.head.removeChild(t)}catch{}}},[]),e.jsxs(ul,{children:[e.jsx("style",{children:Y3}),e.jsx("style",{children:G3}),e.jsx(zn,{}),e.jsx("div",{className:"home2",children:e.jsx(Z3,{})}),e.jsx(J3,{}),e.jsxs("div",{className:"home2",children:[e.jsx(em,{variant:"mid"}),e.jsxs("div",{id:"after","data-sep":"1",children:[e.jsx(X3,{}),e.jsx(e5,{}),e.jsx(t5,{}),e.jsx(n5,{}),e.jsx(r5,{}),e.jsx(i5,{}),e.jsx(s5,{}),e.jsx(c5,{}),e.jsx(em,{variant:"end"})]})]}),e.jsx(Nt,{})]})}const p5=` 2813@import url('https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap'); 2814.home3{ 2815 --brand:#0E8A4F; --brand-d:#0A6B3D; --brand-l:#E4F2EA; 2816 --red:#DC2626; 2817 --panel:#FFFFFF; --panel2:#F8FAFC; --panel3:#F1F5F9; 2818 --line:#E7EBF0; --line2:#CBD5E1; 2819 --ink:#0F172A; --muted:#5B6B7F; --dim:#94A3B8; 2820 --p1:#E7F3EC; --p2:#C4E0D0; --p3:#7FC0A0; --p4:#0E8A4F; 2821 --mono:"IBM Plex Mono",ui-monospace,Menlo,monospace; 2822 --body:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; 2823 --surf:0 1px 2px rgba(15,23,42,.04), 0 24px 54px -34px rgba(15,23,42,.30); 2824 --surf-h:0 1px 2px rgba(15,23,42,.05), 0 32px 66px -34px rgba(15,23,42,.38); 2825 background:var(--panel);color:var(--ink);font-family:var(--body);font-size:16px; 2826 line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility; 2827} 2828.home3,.home3 *{box-sizing:border-box} 2829.home3 button,.home3 input{font-family:inherit} 2830 2831/* ââ gabarit âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 2832.home3 .h3-wrap{max-width:1120px;margin:0 auto;padding:0 32px} 2833.home3 .h3-wrap.nar{max-width:840px} 2834.home3 .h3s{padding:104px 0;border-top:1px solid var(--line)} 2835.home3 .h3s.tint{background:var(--panel2)} 2836.home3 .h3s.center{text-align:center} 2837.home3 .h3s[id]{scroll-margin-top:80px} 2838 2839/* ââ typographie âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 2840.home3 .h3-h1{margin:0;font-size:clamp(33px,5vw,58px);line-height:1.04; 2841 letter-spacing:-.042em;font-weight:700;text-wrap:balance} 2842.home3 .h3-h2{margin:0;font-size:clamp(25px,3.2vw,39px);line-height:1.13; 2843 letter-spacing:-.036em;font-weight:700;text-wrap:balance} 2844.home3 .h3-h2 .soft{color:var(--muted);font-weight:600} 2845.home3 .h3-lead{margin:24px 0 0;font-size:clamp(16.5px,1.35vw,19px);line-height:1.66; 2846 color:var(--muted);text-wrap:pretty} 2847.home3 .h3-lead b{color:var(--ink);font-weight:600} 2848.home3 .h3-p{margin:0;font-size:15.5px;line-height:1.72;color:var(--muted)} 2849.home3 .h3-p b{color:var(--ink);font-weight:600} 2850.home3 .h3-eyeb{display:flex;align-items:center;gap:12px;margin:0 0 18px; 2851 font-family:var(--mono);font-size:10px;font-weight:500;letter-spacing:.24em; 2852 text-transform:uppercase;color:var(--dim)} 2853.home3 .h3-eyeb::before{content:"";display:block;width:22px;height:2px; 2854 background:var(--brand);border-radius:2px;flex:none} 2855/* Rythme éditorial : l'en-tête de CHAQUE section est centré (chapeau, titre, 2856 chapô) ; seuls les blocs de contenu â entonnoir, cartes, tarifs â reprennent 2857 l'alignement à gauche, qui est celui de la lecture. */ 2858.home3 .h3s>.h3-wrap>.h3-eyeb{justify-content:center} 2859.home3 .h3s>.h3-wrap>.h3-h2{text-align:center;margin-left:auto;margin-right:auto} 2860.home3 .h3s>.h3-wrap>.h3-lead{text-align:center;margin-left:auto;margin-right:auto; 2861 max-width:70ch} 2862.home3 .h3-pull{margin:0;font-size:clamp(18px,1.75vw,23px);line-height:1.52; 2863 letter-spacing:-.022em;font-weight:500;color:var(--ink);text-wrap:balance} 2864 2865/* ââ le champ d'adresse (Home2/SiteField, restylé ici) âââââââââââââââââââââ */ 2866.home3 .h3-field{margin:42px auto 0;max-width:600px} 2867.home3 .h3-fieldlbl{margin:0 0 13px;font-family:var(--mono);font-size:10px; 2868 letter-spacing:.2em;text-transform:uppercase;color:var(--dim)} 2869.home3 .ur{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap;justify-content:center} 2870.home3 .uf{display:flex;align-items:center;gap:11px;flex:1 1 260px;min-width:0;height:56px; 2871 padding:0 18px;border:1px solid rgba(15,23,42,.11);border-radius:14px;background:var(--panel); 2872 font-size:16px;box-shadow:0 1px 2px rgba(15,23,42,.04);transition:border-color .18s,box-shadow .18s} 2873.home3 .uf:focus-within{border-color:rgba(15,23,42,.30);box-shadow:0 0 0 4px rgba(15,23,42,.05)} 2874.home3 .uf input{flex:1;min-width:0;border:0;outline:none;background:none; 2875 font-size:16.5px;color:var(--ink);letter-spacing:-.01em} 2876.home3 .uf input::placeholder{color:var(--dim)} 2877.home3 .uf input.shake{animation:h3-shk .42s} 2878@keyframes h3-shk{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}} 2879.home3 .uf.uf-err{border-color:#DC2626;box-shadow:0 0 0 4px rgba(220,38,38,.10)} 2880.home3 .uf-err-msg{margin:10px 0 0;font-size:13px;color:#DC2626;font-weight:500} 2881.home3 .ub{flex:none;height:56px;padding:0 26px;border:0;border-radius:14px; 2882 background:var(--brand);color:#fff;font-size:15.5px;font-weight:700;cursor:pointer; 2883 white-space:nowrap;letter-spacing:-.01em; 2884 box-shadow:0 2px 4px rgba(14,138,79,.20), 0 14px 28px -16px rgba(14,138,79,.75); 2885 transition:background .18s,transform .18s,box-shadow .18s} 2886.home3 .ub::after{content:"â";margin-left:10px;display:inline-block} 2887.home3 .ub:hover{background:var(--brand-d);transform:translateY(-1px); 2888 box-shadow:0 2px 4px rgba(14,138,79,.22), 0 18px 34px -16px rgba(14,138,79,.8)}
2889.home3 .ub:active{transform:none} 2890.home3 .usug{display:flex;gap:7px;margin-top:11px;flex-wrap:wrap;justify-content:center} 2891.home3 .usg{border:1px solid var(--line);background:var(--panel2);border-radius:99px; 2892 padding:5px 13px;font-size:12.5px;color:var(--muted);cursor:pointer;transition:border-color .16s,color .16s} 2893.home3 .usg:hover{border-color:var(--ink);color:var(--ink)} 2894 2895/* ââ hero ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 2896.home3 .h3-hero{padding:88px 0 78px;text-align:center;border-top:0} 2897.home3 .h3-hero .h3-h1{max-width:980px;margin:0 auto} 2898.home3 .h3-hero .h3-lead{max-width:66ch;margin:28px auto 0} 2899.home3 .h3-steps{display:grid;grid-template-columns:1fr 1fr;max-width:900px; 2900 margin:52px auto 0;text-align:left;border-top:1px solid var(--line)} 2901.home3 .h3-step{padding:26px 30px} 2902.home3 .h3-step+.h3-step{border-left:1px solid var(--line)} 2903.home3 .h3-step b{display:grid;place-items:center;width:27px;height:27px;border-radius:50%; 2904 border:1px solid var(--line2);color:var(--muted);font-family:var(--mono);font-size:11px; 2905 font-weight:600;margin-bottom:13px} 2906.home3 .h3-step p{margin:0;font-size:14.5px;line-height:1.66;color:var(--muted)} 2907.home3 .h3-angles{display:flex;align-items:center;justify-content:center;gap:9px; 2908 flex-wrap:wrap;margin-top:40px} 2909@media (max-width:520px){ 2910.home3 .h3-angles{flex-wrap:nowrap;gap:6px;margin-top:30px} 2911.home3 .h3-angle{padding:5px 10px;font-size:11px;white-space:nowrap} 2912} 2913.home3 .h3-angle{border:1px solid var(--line);border-radius:99px;padding:6px 15px; 2914 font-size:12.5px;font-weight:600;color:var(--ink);background:var(--panel2)} 2915 2916/* ââ le tri : l'entonnoir ââââââââââââââââââââââââââââââââââââââââââââââââââ */ 2917.home3 .h3-funnel{margin:54px 0 0;display:flex;flex-direction:column;gap:12px} 2918.home3 .h3-fr{display:grid;grid-template-columns:104px minmax(0,1fr) minmax(0,1.02fr); 2919 gap:26px;align-items:center} 2920.home3 .h3-frail{font-family:var(--mono);font-size:9.5px;letter-spacing:.17em; 2921 text-transform:uppercase;color:var(--dim);text-align:right;line-height:1.4} 2922.home3 .h3-fbar{display:flex;align-items:center;height:64px;border-radius:11px;padding:0 22px; 2923 font-size:clamp(20px,2.1vw,29px);font-weight:700;letter-spacing:-.04em;color:var(--ink); 2924 font-variant-numeric:tabular-nums;line-height:1;white-space:nowrap;min-width:136px} 2925.home3 .h3-fr:nth-child(1) .h3-fbar{background:var(--p1)} 2926.home3 .h3-fr:nth-child(2) .h3-fbar{background:var(--p2)} 2927.home3 .h3-fr:nth-child(3) .h3-fbar{background:var(--p3)} 2928.home3 .h3-fr:nth-child(4) .h3-fbar{background:var(--p4);color:#fff; 2929 box-shadow:0 10px 26px -14px rgba(14,138,79,.85)} 2930.home3 .h3-flabel{font-size:14.5px;line-height:1.58;color:var(--muted)} 2931.home3 .h3-fr:nth-child(4) .h3-flabel{color:var(--ink);font-weight:600} 2932.home3 .h3-fcover{display:grid;grid-template-columns:104px minmax(0,1fr) minmax(0,1.02fr); 2933 gap:26px;align-items:center;margin-top:10px;padding-top:24px;border-top:1px solid var(--line)} 2934.home3 .h3-fcval{display:flex;align-items:baseline;gap:11px;flex-wrap:wrap} 2935.home3 .h3-fcval b{font-size:clamp(20px,2.1vw,29px);font-weight:700;letter-spacing:-.04em; 2936 color:var(--ink);font-variant-numeric:tabular-nums;line-height:1} 2937.home3 .h3-fcval em{font-style:normal;font-size:15px;font-weight:600;color:var(--muted)} 2938.home3 .h3-tri-p{max-width:74ch;margin:34px auto 0;text-align:center} 2939/* Le taux de MATCH est un DETAIL de la phrase du dessus : plus petit, plus pale. */ 2940.home3 .h3-tri-note{max-width:84ch;margin:9px auto 0;text-align:center; 2941 font-size:12.5px;line-height:1.6;color:var(--dim)} 2942/* Chapo des PLANS : 2 lignes (le chapo generique plafonne a 70ch). */ 2943.home3 .h3s>.h3-wrap>.h3-plans-lead{max-width:86ch} 2944.home3 .h3-tri-pull{margin:36px auto 0;padding-top:36px;border-top:1px solid var(--line); 2945 max-width:60ch;text-align:center} 2946 2947/* ââ la décision âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 2948.home3 .h3-dec{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr); 2949 gap:24px;margin-top:50px;align-items:stretch;text-align:left} 2950.home3 .h3-card{background:var(--panel);border:1px solid rgba(15,23,42,.08); 2951 border-radius:20px;padding:30px;box-shadow:var(--surf)} 2952.home3 .h3-yn{display:grid;grid-template-columns:1fr 1fr;gap:14px} 2953.home3 .h3-btn{display:flex;align-items:center;justify-content:center;gap:11px; 2954 border-radius:14px;padding:24px 10px;color:#fff; 2955 font-size:19px;font-weight:800;letter-spacing:.04em} 2956.home3 .h3-btn svg{flex:none;display:block} 2957.home3 .h3-btn.y{background:var(--brand);box-shadow:0 10px 24px -14px rgba(14,138,79,.9)} 2958.home3 .h3-btn.n{background:var(--red);box-shadow:0 10px 24px -14px rgba(220,38,38,.85)} 2959.home3 .h3-route{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:16px} 2960.home3 .h3-route span{font-size:12.5px;line-height:1.5;color:var(--muted);text-align:center} 2961.home3 .h3-route span::before{content:"â";display:block;margin-bottom:7px; 2962 color:var(--line2);font-size:14px} 2963.home3 .h3-decnote{margin:26px 0 0;padding-top:24px;border-top:1px solid var(--line); 2964 font-size:14px;line-height:1.72;color:var(--muted)} 2965.home3 .h3-revh{display:flex;align-items:center;gap:12px;flex-wrap:wrap; 2966 padding-bottom:20px;border-bottom:1px solid var(--line)} 2967.home3 .h3-revk{font-family:var(--mono);font-size:9.5px;letter-spacing:.18em; 2968 text-transform:uppercase;color:var(--brand-d);background:var(--brand-l); 2969 border-radius:99px;padding:6px 12px;font-weight:600} 2970.home3 .h3-revt{font-size:16px;font-weight:700;letter-spacing:-.022em} 2971/* La revue est une LISTE (plus de rails Stan/Nous/Vous) : puce verte, filets 2972 entre les points, dernier sans filet. */ 2973.home3 .h3-revr{position:relative;margin:0;padding:14px 0 14px 20px; 2974 border-bottom:1px solid var(--line);font-size:13.8px;line-height:1.7;color:var(--muted)} 2975.home3 .h3-revr:last-child{border-bottom:0;padding-bottom:0} 2976.home3 .h3-revr::before{content:"";position:absolute;
2976left:2px;top:23px; 2977 width:6px;height:6px;border-radius:50%;background:var(--brand);opacity:.7} 2978 2979/* ââ qui est Stan ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 2980.home3 .h3-trip{display:grid;grid-template-columns:repeat(3,1fr);max-width:900px; 2981 margin:0 auto;border-top:1px solid var(--line2);border-bottom:1px solid var(--line2)} 2982.home3 .h3-trip span{padding:28px 16px;text-align:center;font-size:clamp(19px,2.2vw,27px); 2983 font-weight:700;letter-spacing:-.032em;line-height:1.15} 2984.home3 .h3-trip span+span{border-left:1px solid var(--line)} 2985.home3 .h3-stan-p{margin:34px auto 0;max-width:62ch} 2986.home3 .h3-logoswrap{margin:52px auto 0;max-width:780px} 2987.home3 .h3-logoslbl{margin:0 0 20px;font-family:var(--mono);font-size:9.5px; 2988 letter-spacing:.2em;text-transform:uppercase;color:var(--dim)} 2989/* mix-blend-mode:multiply â trust-logos.png porte des fonds BLANCS opaques 2990 (Ardian, Mirakl) qui se verraient comme des rectangles sur la section teintée. */ 2991.home3 .h3-logos{display:block;width:100%;height:auto;opacity:.88;mix-blend-mode:multiply} 2992.home3 .h3-stan-pull{margin:52px auto 0;max-width:44ch} 2993.home3 .h3-closing{margin:22px auto 0;max-width:64ch;font-size:clamp(16px,1.4vw,18.5px); 2994 line-height:1.65;color:var(--muted);text-wrap:pretty} 2995.home3 .h3-closing b{color:var(--ink);font-weight:600} 2996 2997/* ââ les plans : raffinements de la grille partagée .prc2 ââââââââââââââââââ */ 2998/* La grille est un bloc de LECTURE : elle reste alignée à gauche même quand 2999 l'en-tête de section est centré. */ 3000.home3 .prc2{text-align:left} 3001.home3 .prc2 .prices{gap:20px;margin-top:40px;align-items:stretch} 3002.home3 .prc2 .price{display:flex;flex-direction:column;padding:30px;border-radius:20px; 3003 border:1px solid rgba(15,23,42,.08);box-shadow:var(--surf); 3004 transition:box-shadow .22s ease,transform .22s ease} 3005.home3 .prc2 .price:hover{transform:translateY(-3px);box-shadow:var(--surf-h)} 3006.home3 .prc2 .price.hi{border-color:rgba(14,138,79,.38); 3007 box-shadow:0 0 0 4px rgba(14,138,79,.07), var(--surf)} 3008.home3 .prc2 .price.hi:hover{box-shadow:0 0 0 4px rgba(14,138,79,.07), var(--surf-h)} 3009.home3 .prc2 .price .badge{top:-12px;padding:4px 13px;font-size:10.5px;letter-spacing:.01em} 3010.home3 .prc2 .price .p{font-size:clamp(28px,2.6vw,34px);letter-spacing:-.04em;margin:10px 0 4px} 3011.home3 .prc2 .price ul{flex:1 1 auto;margin-bottom:22px} 3012.home3 .prc2 .price li{font-size:13.5px;line-height:1.6;margin-bottom:11px} 3013.home3 .prc2 .price button{border-radius:12px;padding:14px;font-size:14px; 3014 transition:opacity .18s,transform .18s} 3015.home3 .prc2 .price button:hover{opacity:.9;transform:translateY(-1px)} 3016/* Les trois listes de puces démarrent à la MÃME hauteur : en-tête et jauge 3017 calés (l'Essai n'a ni mentions fines ni note de cadence). */ 3018.home3 .prc2 .phead{min-height:184px} 3019.home3 .prc2 .q2{border-radius:10px;padding:14px 16px;margin-bottom:20px; 3020 min-height:118px;display:flex;flex-direction:column;justify-content:center} 3021/* Les deux mentions sous la grille tiennent chacune sur UNE ligne au-dessus de 3022 1180 px (demande Antoine) ; en dessous elles se replient normalement. */ 3023.home3 .prc2 .under{border:0;background:none;padding:0;margin:34px auto 0; 3024 max-width:none;text-align:center;font-size:12.5px;line-height:1.7} 3025.home3 .prc2 .under .ment{margin-top:7px;font-size:11.5px} 3026@media (min-width:1180px){ 3027.home3 .prc2 .under,.home3 .prc2 .under .ment{white-space:nowrap} 3028} 3029 3030/* ââ la reprise ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 3031.home3 .h3-reprise{padding:96px 0 108px} 3032.home3 .h3-repcard{background:linear-gradient(175deg,#111E33 0%,#0B1220 100%); 3033 border-radius:28px;padding:clamp(46px,5vw,76px) clamp(26px,4vw,60px);text-align:center; 3034 box-shadow:0 30px 72px -44px rgba(11,18,32,.85)} 3035.home3 .h3-repcard .h3-h2{color:#fff;max-width:800px;margin:0 auto} 3036.home3 .h3-repcard .h3-lead{color:#9FB6CA;max-width:64ch;margin:26px auto 0} 3037.home3 .h3-repcard .h3-lead b{color:#fff} 3038.home3 .h3-repcard .uf{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.17); 3039 box-shadow:none} 3040.home3 .h3-repcard .uf:focus-within{border-color:rgba(255,255,255,.42); 3041 box-shadow:0 0 0 4px rgba(255,255,255,.07)} 3042.home3 .h3-repcard .uf input{color:#fff} 3043.home3 .h3-repcard .uf input::placeholder{color:rgba(255,255,255,.40)} 3044.home3 .h3-repcard .usg{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16); 3045 color:#B8C6D6} 3046.home3 .h3-repcard .usg:hover{border-color:#fff;color:#fff} 3047 3048/* ââ adaptations âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 3049@media (max-width:1000px){ 3050.home3 .h3-dec{grid-template-columns:1fr} 3051.home3 .h3-fr,.home3 .h3-fcover{grid-template-columns:88px minmax(0,1fr) minmax(0,1fr);gap:20px} 3052} 3053@media (max-width:820px){ 3054.home3 .h3s{padding:66px 0} 3055.home3 .h3-hero{padding:58px 0 56px} 3056.home3 .h3-wrap{padding:0 22px} 3057.home3 .h3-hero .h3-h1{max-width:none} 3058.home3 .h3-steps{grid-template-columns:1fr;margin-top:42px} 3059.home3 .h3-step+.h3-step{border-left:0;border-top:1px solid var(--line)} 3060.home3 .h3-step{padding:22px 0} 3061.home3 .h3-fr,.home3 .h3-fcover{grid-template-columns:1fr;gap:9px} 3062.home3 .h3-fcover{margin-top:4px;padding-top:22px} 3063.home3 .h3-frail{text-align:left} 3064.home3 .h3-fbar{height:56px;padding:0 18px} 3065.home3 .h3-funnel{gap:22px} 3066.home3 .h3-trip{grid-template-columns:1fr} 3067.home3 .h3-trip span{padding:20px 12px} 3068.home3 .h3-trip span+span{border-left:0;border-top:1px solid var(--line)} 3069.home3 .h3-revr{grid-template-columns:1fr;gap:7px} 3070.home3 .h3-card{padding:24px} 3071.home3 .h3-reprise{padding:66px 0 76px} 3072.home3 .h3-repcard{border-radius:22px} 3073.home3 .ub{width:100%} 3074.home3 .prc2 .phead,.home3 .prc2 .q2{min-height:0} 3075} 3076@media (max-width:420px){ 3077.home3 .h3-btn{font-size:17px;padding:20px 6px} 3078.home3 .h3-route span{font-size:11.5px} 3079} 3080@media (prefers-reduced-motion:reduce){ 3081.home3 *{transition:none!important;animation:none!important} 3082} 3083`,u5=` 3084:root{ 3085 --green:#4AC67F;--green-dk:#36a866;--red:#C0392B;--ink:#0A0A0A;--sub:#444; 3086 --mid:#777;--lite:#AAA;--line:#E8E8E4;--bg:#F6F6F3;--gp:#EFF9F4;--rp:#FEF5F4; 3087 --white:#FFF; 3088 --pp-green:#0E8A4F;--pp-green-h:#0A6B3D;--pp-green-p:#0A6B3D; 3089 --pp-green-tx:#0A6B3D;--pp-green-bg:#E4F2EA;--pp-green-chip:#E4F2EA; 3090 --pp-green-bd:#C4E0D0;--pp-green-soft:#7FC0A0; 3091 --pp-navy:#0B1220;--pp-navy-h:#111E33; 3092 --pp-ink:#0F172A;--pp-ink-2:#5B6B7F;
3092--pp-ink-3:#64748B;--pp-ink-4:#94A3B8; 3093 --pp-ink-5:#CBD5E1; 3094 --pp-line:#E7EBF0;--pp-line-in:#EEF2F7;--pp-line-in2:#F1F5F9; 3095 --pp-line-dash:#CBD5E1;--pp-line-strong:#CBD5E1; 3096 --pp-bg:#FFFFFF;--pp-bg-zone:#F8FAFC;--pp-bg-page:#F1F5F9;--pp-bg-hover:#F8FAFC; 3097 --pp-body:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; 3098 --pp-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace; 3099 --font-sans:'Inter','Helvetica Neue',sans-serif; 3100 --pp-r-s:8px;--pp-r-m:10px;--pp-r-l:14px;--pp-r-xl:16px;--pp-r-pill:8px; 3101 --pp-sh-cta:none;--pp-sh-step:none; 3102} 3103/* le globe du champ d'adresse : il était rendu par le composant, que le 3104 restyle a nettoyé (la pastille verte l'a remplacé). On le remet par la 3105 feuille, pour ne pas rouvrir un composant vivant au nom d'une archive. */ 3106.home3 .uf::before{content:"ð";margin-right:2px} 3107`;function h5(){return ht({en:{title:"Proplace â Home (before the v3 restyle)",description:"Archived look of the Proplace home page, kept for comparison."},fr:{title:"Proplace â Accueil (avant le restyle v3)",description:"Apparence archivée de la page dâaccueil Proplace, conservée pour comparaison."}}),m.useEffect(()=>{try{ha()}catch{}},[]),m.useEffect(()=>{const t=document.createElement("meta");return t.name="robots",t.content="noindex,nofollow",document.head.appendChild(t),()=>{try{document.head.removeChild(t)}catch{}}},[]),e.jsxs(ul,{children:[e.jsx("style",{children:u5}),e.jsx("style",{children:p5}),e.jsx(zn,{}),e.jsxs("main",{className:"home3",children:[e.jsx(Vx,{}),e.jsx(Hx,{}),e.jsx(Gx,{}),e.jsx(Wx,{}),e.jsx(Qx,{}),e.jsx(Zx,{})]}),e.jsx(Nt,{})]})}const m5="https://alexandre-79537--sourcing-agent-fastapi-app.modal.run/newsletter/subscribe",p1={en:{title:"Subscribe to the daily newsletter",sub:"Every day: M&A deals and fundraisings in France & Europe â key figures, press sources, in-depth analysis. Free, one-click unsubscribe.",placeholder:"[email protected]",submit:"Subscribe â",sending:"Subscribingâ¦",ok:"Done! You will receive the newsletter from the next edition.",err:"Something went wrong â please try again in a few seconds.",points:["ð° Every M&A deal and fundraising of the day, all sectors.","ð Key market figures: volumes, amounts, moving sectors.","ð§ The daily in-depth analysis, with its press sources.","ð© One email a day, free, unsubscribe in one click."],sectors:"Or follow only YOUR sector â 36 daily sector newsletters (in French):",sectorsLink:"choose your sector â"},fr:{title:"S'abonner à la newsletter quotidienne",sub:"Chaque jour : les opérations M&A et levées de fonds en France & Europe â chiffres clés, sources presse, analyse de fond. Gratuit, désinscription en un clic.",placeholder:"[email protected]",submit:"S'abonner â",sending:"Inscription en coursâ¦",ok:"C'est noté ! Vous recevrez la newsletter dès la prochaine édition.",err:"Une erreur est survenue â réessayez dans quelques secondes.",points:["ð° Toutes les opérations M&A et levées de fonds du jour, tous secteurs.","ð Les chiffres clés du marché : volumes, montants, secteurs qui bougent.","ð§ L'analyse de fond quotidienne, avec ses sources presse.","ð© Un email par jour, gratuit, désinscription en un clic."],sectors:"Ou uniquement VOTRE secteur â 36 newsletters sectorielles quotidiennes :",sectorsLink:"choisir votre secteur â"}};function fl(t="general"){const{lang:n}=ae(),r=p1[n],[i,s]=m.useState("idle"),[a,o]=m.useState("");return{state:i,errMsg:a,submit:async(l,d="")=>{if(!l.trim()||i==="sending")return!1;s("sending");try{const u=await(await fetch(m5,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:l.trim(),sector:t,website:d})})).json().catch(()=>null);return u&&u.ok?(s("ok"),!0):(o(n==="fr"&&u&&u.error?u.error:r.err),s("err"),!1)}catch{return o(r.err),s("err"),!1}},copy:r}}function g5({showPoints:t=!0}){const{lang:n}=ae(),r=p1[n],[i,s]=m.useState(""),[a,o]=m.useState(""),{state:c,errMsg:l,submit:d}=fl("general");async function p(u){u.preventDefault(),await d(i,a)&&s("")}return e.jsxs("div",{className:"signup-box",style:{textAlign:"left",background:"#fff"},children:[e.jsx("span",{className:"signup-icon","aria-hidden":"true",children:"ð¬"}),e.jsx("div",{className:"signup-title",children:r.title}),e.jsx("p",{className:"signup-sub",children:r.sub}),e.jsxs("form",{className:"signup-form",onSubmit:p,noValidate:!0,children:[e.jsx("input",{type:"email",required:!0,value:i,onChange:u=>s(u.target.value),placeholder:r.placeholder,"aria-label":r.placeholder}),e.jsx("input",{type:"text",name:"website",value:a,onChange:u=>o(u.target.value),tabIndex:-1,autoComplete:"off","aria-hidden":"true",style:{position:"absolute",left:-9999,height:0,width:0,border:0,padding:0}}),e.jsx("button",{className:"signup-submit",type:"submit",disabled:c==="sending",children:c==="sending"?r.sending:r.submit})]}),e.jsx("p",{"aria-live":"polite",style:{minHeight:18,margin:"10px 0 0",fontSize:13,color:c==="err"?"#C0353A":"var(--green-dk, #0E7F3F)"},children:c==="ok"?r.ok:c==="err"?l:""}),t&&e.jsx("ul",{style:{listStyle:"none",padding:0,margin:"14px 0 0"},children:r.points.map((u,g)=>e.jsx("li",{style:{fontSize:13,color:"var(--mid, #5a6678)",margin:"0 0 7px",lineHeight:1.5},children:u},g))}),e.jsxs("p",{style:{fontSize:13,color:"var(--mid, #5a6678)",margin:"14px 0 0",lineHeight:1.5},children:[r.sectors," ",e.jsx("a",{href:`https://proplace.co/${n}/newsletter`,style:{color:"var(--green-dk, #0E7F3F)",fontWeight:600},children:r.sectorsLink})]})]})}const f5={en:{eyebrow:"Newsletter"},fr:{eyebrow:"Newsletter"}};function x5({showHeading:t=!1}){const{lang:n}
3107=ae(),r=f5[n];return e.jsx("div",{className:"section",style:{background:"#fff"},children:e.jsxs("div",{className:"wrap-wide",style:{maxWidth:640,margin:"0 auto",padding:"0 24px"},children:[t&&e.jsx("span",{className:"eyebrow",style:{textAlign:"center"},children:r.eyebrow}),e.jsx(g5,{showPoints:!1})]})})}const L5="https://images.fillout.com/orgid-7761/flowpublicid-ia2sy4nraa/widgetid-default/wpEdW7PTbzRFH48JHVPYHy/pasted-image-1774872761823.png",v5="https://images.fillout.com/orgid-7761/flowpublicid-ia2sy4nraa/widgetid-default/wsqAvNgW5kGM4Uhh5Co9DQ/pasted-image-1774872844342.jpg",b5="https://images.fillout.com/orgid-7761/flowpublicid-ia2sy4nraa/widgetid-default/oEFBYGkMzFkbPpqop5JfXM/pasted-image-1774874615754.png",y5={en:{nav:[{id:"how",label:"Method"},{id:"memo",label:"The memo"},{id:"proof",label:"Proof"},{id:"founder",label:"Team"},{id:"pricing",label:"Pricing"},{id:"faq",label:"FAQ"}],badge:"Outbound B2B Edition",heroTitle:e.jsxs(e.Fragment,{children:["From Signal to ",e.jsx("em",{children:"Signature."})]}),heroSub:e.jsx(e.Fragment,{children:"Stan finds the accounts about to buy â and writes you the way in."}),heroNote:"Not a cold list. A reason to reach out and the exact angle, on the accounts that should be your customers. New qualified accounts, each with a ready-to-send sales memo, in your inbox every morning.",ctaPrimary:"Set up my engine",ctaSecondary:"See Stan run on your account (45 min)",sigEyebrow:"Buying signals · examples",sigTitle:e.jsxs(e.Fragment,{children:["Stan reads the buying signals ",e.jsx("em",{children:"before they hit your competitorsâ CRMs."})]}),sigLead:"You get a reply when you land the week something changed. Stan watches ~15 channels and turns each change into a reason to reach out â months before the rest of the market notices.",sigNote:"Illustrative examples â not live data.",signals:[{icon:"ð¸",tag:"Funding · Series B",txt:"Just raised â¬40M to expand internationally: new budget, new pressure, new urgency.",meta:"Source: funding feed."},{icon:"ð§âð¼",tag:"Key hire",txt:"Hired a first VP Revenue from a logo you already serve: a champion who knows your category.",meta:"Source: LinkedIn job-change signal."},{icon:"ð",tag:"Launch",txt:"Shipped a new product line into a vertical your tool was built for.",meta:"Source: changelog + press."},{icon:"âï¸",tag:"New regulation",txt:"A rule just made their current setup non-compliant: a deadline you can solve.",meta:"Source: sector-media engine."},{icon:"ð",tag:"Leadership change",txt:"New CEO from an account you closed last year: relationship warm from day one.",meta:"Source: decision-maker tracking."},{icon:"ð ",tag:"Tech stack",txt:"Spun up the exact tool you displace: the window to switch them is open, now.",meta:"Source: stack-detection engine."}],sigFoot:"Each signal becomes a sales memo: who to contact, why now, and the angle that earns a reply.",whatEyebrow:"What is Stan",whatTitle:e.jsxs(e.Fragment,{children:["Your best repâs research â ",e.jsx("em",{children:"on every account, every morning."})]}),whatP1:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Stan watches everything that moves in your market"})," and qualifies every account with the rigour of a great rep prepping for a call. On every match it hands you a one-page memo: the trigger, the angle that crosses their situation with your offer, the competitor you displace, who to call, and a ready-to-send sequence."]}),whatP2:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"You stay in control â without the busywork."})," Most days: a short prospect brief, nothing to do. When Stan finds a top-fit account with an active trigger, you answer ",e.jsx("strong",{children:"YES"})," or ",e.jsx("strong",{children:"NO"})," â from the email, the memo, anywhere. Two minutes."]}),whatP3:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"YES"})," â Stan writes the approach sequence and pushes it to your sending tool. ",e.jsx("strong",{children:"NO"})," â Stan encodes the rejection and tightens your ICP. Every decision makes tomorrowâs prospects sharper."]}
3107),whatP4:e.jsxs(e.Fragment,{children:["It doesnât replace your SDR or your sending tool. It hands them the one thing theyâre missing: ",e.jsx("strong",{children:"the right account, the trigger, and the angle."})]}),stat1n:"~15",stat1:"sourcing channels scanned every morning",stat2n:"52Ã",stat2:"ICP-thesis updates per year â versus a frozen list",stat3n:"1 deal",stat3:"and Stan pays for itself: one signature covers your setup + first quarter (â¬9,500)",stat4n:"2â¿áµ Mon",stat4:"go-live: thesis built, engine wired, first memos",whyEyebrow:"Why Stan",whyTitle:e.jsxs(e.Fragment,{children:["A â¬60â80K SDR vs. â¬1,500/month.",e.jsx("br",{}),"Live by the 2nd Monday."]}),whyIntro:"A human SDR is capped by their hours, their list and their patience. Stan researches every account on your market with the same rigour â every day, indefinitely.",thHuman:"Human SDR / prospecting",thStan:"Stan â AI prospecting engine",whyRows:[{k:"Sourcing",a:"Scrolls Apollo and LinkedIn a few hours a day. A static list â the accounts everyone else is also emailing.",b:"~15 channels every morning. Accounts surfaced the week a trigger fires."},{k:"Research",a:"A few minutes per account, then a generic template. Quality drops with fatigue.",b:"A full sales memo in minutes, zero variation. The same depth on account #1 and #500."},{k:"Targeting",a:"A frozen list, bought once. It never learns from who replied or closed.",b:"A living ICP thesis, rewritten every week from your YES/NO."},{k:"Time",a:"Up to 80% of the week lost to research and CRM hygiene.",b:"Zero research time. Your team spends its hours talking to prospects."},{k:"Cost",a:"â¬60â80K/year all-in â plus a 3-month ramp and churn.",b:"â¬1,500/month + a one-time â¬5,000 setup. Live by the 2nd Monday. Unlimited accounts."}],howEyebrow:"How it works",howTitle:e.jsxs(e.Fragment,{children:["From what you sell to ",e.jsx("em",{children:"who to contact, why, and how."})]}),howLead:"Stan doesnât start from a generic template. It starts from your offer â encoded once, executed every day, sharpened every week.",steps:[{num:"Step 1 · Once",title:"Your growth thesis",desc:"In one hour we turn what you sell (site, product, pricing, customers) into your ICPs: vertical, decision-maker persona, geography, and the exact problem you solve.",outTitle:"The output",out:e.jsxs(e.Fragment,{children:["A living ICP thesis â ",e.jsx("strong",{children:"your prospecting brain, versioned."})]})},{num:"Step 2 · Daily",title:"Qualified accounts",desc:"The engine sources continuously across ~15 channels. Every company passes a strict gate â MATCH or NO MATCH â with the reasoning shown. No noise reaches you.",outTitle:"The output",out:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"A scored shortlist"})," in your dashboard â filterable by vertical, geography and trigger."]})},{num:"Step 3 · Daily",title:"A sales memo on every match",desc:"Each MATCH triggers a full memo, then one of four verdicts.",outTitle:"The output",out:e.jsxs(e.Fragment,{children:["A decision-grade memo + sequence â ",e.jsx("strong",{children:"only the CALLs reach you."})]})}],verdictsTitle:"Stanâs four verdicts â only one needs you",verdicts:[{cls:"call",label:"CALL",color:"var(--green-dk)",p:"Strong ICP + active trigger. Surfaced to you with a YES / NO and the sequence already written."},{cls:"consider",label:"CONSIDER",color:"#b9651a",p:"Good fit, one fact missing. Stan waits, then flips to CALL or PASS. No input needed."},{cls:"monitor",label:"MONITOR",color:"#2371a5",p:"Right ICP, no trigger yet. 90-day checkpoint. No input needed."},{cls:"pass",label:"PASS",color:"var(--red)",p:"Out of ICP. The thesis tightens for next week. No input needed."}],verdictsFoot:e.jsxs(e.Fragment,{children:["Three of the four are handled autonomously. Your only job: ",e.jsx("strong",{children:"YES or NO on the CALLs."})," Even if you donât open a single email this week, nothing slips through."]}),memoEyebrow:"The sales memo",memoTitle:e.jsxs(e.Fragment,{children:["What lands on every prospect. ",e.jsx("em",{children:"Not a data sheet â an attack brief."})]}),anat:[{k:"The trigger",p:"The event that creates urgency now."},{k:"The crossed use case",p:"Their situation à your capability â the value unlocked."},{k:"The competitor to displace",p:"The tool likely in place + the gap you enter through."},{k:"The proof to draw",p:"The single most relevant logo / case study for THIS prospect."},{k:"Decision-maker & committee",p:"Who to contact; on a large account: champion / buyer / blockers."},{k:"Discovery & objections",p:"Questions, likely objections and the answers."},{k:"The approach sequence",p:"3 ready-to-send messages, tuned to each channel, asserting only verified facts."},{k:"The verdict",p:"CALL · CONSIDER · MONITOR · PASS â at a glance, with the reasoning."}],memoFoot:e.jsx(e.Fragment,{children:"You get it all in a dedicated interface (leads view + thesis editor), and the sequence pushes straight to your sending tool â Lemlist, Instantly, La Growth Machine, GetSalesâ¦"}),memoLock:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"We never push you an account to contact without its memo."})," The dashboard shows the shortlist Stan qualifies continuously; whatâs surfaced for action â every CALL â always comes with its trigger, its angle and its sequence. Stan doesnât sell contact volume: it sells reasons to reach out, ready to run."]}),ritualEyebrow:"The daily ritual",ritualTitle:"Stan runs everything. You answer YES or NO â only when it matters.",ritualP1:e.jsxs(e.Fragment,{children:["Stan sources, qualifies and drafts every day â without asking anything from you. When it finds a high-fit account with an active trigger, it lands in your daily brief. ",e.jsx("strong",{children:"YES or NO â whenever you have two minutes."})]}),ritualP2:e.jsxs(e.Fragment,{children:["No time this week? The CONSIDER and MONITOR accounts keep maturing on their own â ",e.jsx("strong",{children:"nothing is lost."})," Your open CALLs simply wait at the top of Mondayâs brief."]}),yesLabel:"â YES",yesBody:e.jsx(e.Fragment,{children:"Stan writes the sequence and pushes it to your sending tool. The winning angles feed back in."}),noLabel:"â NO",noBody:e.jsx(e.Fragment,{children:"Stan encodes the rejection pattern. One line of reasoning makes it converge on this ICP markedly faster."}),imgAlt:"Daily prospect brief â mobile preview",tl1t:"Every day",tl1h:"Daily prospect brief",tl1p:"Sourced, qualified, drafted. Most days: no input. When Stan finds a top fit: YES · NO in one click.",tl2t
3107:"Monday",tl2h:"Weekly command center",tl2p:e.jsxs(e.Fragment,{children:["Every YES / NO is processed. ",e.jsx("strong",{children:"YES"})," reinforces what works; ",e.jsx("strong",{children:"NO"})," rewrites the targeting. The logic that produces next weekâs prospects."]}),tl3t:"3 months",tl3h:"A list that canât be copied",tl3p:e.jsx(e.Fragment,{children:"Your ICP thesis mirrors who actually replies and buys. Not a tool you rent; an asset you build."}),flyEyebrow:"The compounding advantage",flyH2:"52 ICP updates a year, versus a list you buy once.",flyBody1:e.jsx(e.Fragment,{children:"Classic outbound buys a static list and burns it. Reply rates fall as the list ages, and nothing learns from who actually answered."}),flyBody2:e.jsxs(e.Fragment,{children:["Stan rewrites your ICP thesis every week from your real YES/NO. After a few months your target list is ",e.jsx("strong",{children:"structurally irreplicable."})]}),flyManualHead:"Classic outbound",flyManual:["Static list, bought once","Generic, copy-paste sequences","No reason âwhy nowâ","Reps spend the week searching","Reply rate decays over time"],flyStanHead:"Stan â Outbound B2B",flyStan:["ICP thesis updated 52à / year","~15 channels scanning every morning","An explicit trigger per account","Reps focus on the conversation","Precision compounds every week"],flyStats:[{n:"~15",d:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Channels read every morning"})," â weak signals, hires, launches, registries, GitHub, Exa."]})},{n:"52Ã",d:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"ICP updates per year."})," Each Mondayâs targeting is sharper than last weekâs."]})},{n:"3mo",d:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Until your target list is structurally irreplicable"})," â built on compounded decisions."]})},{n:"0",d:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Research hours for your reps."})," Their time goes to the conversation, not the lookup."]})}],proofEyebrow:"The proof · measured every Monday",proofTitle:"The real KPI is pipeline. The YES rate is our leading indicator of targeting.",proofIntro:e.jsxs(e.Fragment,{children:["Stan surfaces only the highest-fit accounts (the CALLs). You answer YES or NO. Your ",e.jsx("strong",{children:"YES rate"})," measures how closely Stan targets like you â a quality indicator, not the promise. ",e.jsx("strong",{children:"What you measure is qualified meetings and pipeline attributable to Stan."})," Simple rule: over a year, a single closed deal pays for Stan."]}),proofCaption:"Target YES-rate trajectory â your real curve is reported to you every Monday:",proofSteps:[{pct:"20â30%",period:"Month 1",desc:"Stan runs on the thesis as you wrote it. Many solid accounts donât match your tacit judgment yet. Every NO is highly informative."},{pct:"60â70%",period:"Month 2",desc:"Dozens of YES/NO have rewritten the sourcing and qualification. Stan recognises the accounts you reject without you spelling it out."},{pct:"~85%",period:"Month 3",desc:"Nearly every account surfaced is one youâd approach. Stanâs targeting mirrors yours."}],proofFoot:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Ammunition from month one."})," During calibration (M1âM2), while the YES rate climbs, Stan deliberately surfaces the ",e.jsx("strong",{children:"top of the CALL range"})," so you have pipeline to work right away â not only once the gate is perfectly tuned. You donât hit an air pocket while the engine learns."]}),chartY:"YES rate",chartGoLive:"Go-live",chartX:"Months since go-live",wp1t:"Month 1",wp1v:"~25% YES",wp2t:"Month 2",wp2v:"~65% YES",wp3t:"Month 3",wp3v:"~85% YES",chartAria:"Target YES-rate trajectory, from about 25%
3107in month 1 to about 85% by month 3",archEyebrow:"Plug & Play architecture",archTitle:"Standalone, or wired to your sending tool.",archDesc:"Use Stanâs own interface, or push every sequence straight to Lemlist, Instantly, La Growth Machine, GetSales or your CRM. Stan supplies the targets and the angle; your stack does the sending.",whoEyebrow:"Who itâs for",whoTitle:"Built for teams that sell a high-value offer â where a single closed deal pays for Stan.",whoIntro:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"The entry bar: a new customer is worth at least ~â¬10K (contract, first year or LTV)."})," At that level, a single closed deal covers everything you put in â your setup and first quarter, â¬9,500 â and every deal after is net. Below that, youâd need to stack several deals to break even: itâs probably not for you, and weâll tell you straight on the call."]}),who:[{h:"Founders & CEOs who still sell",p:"You close the big logos yourself. Stan hands you a daily shortlist with an active trigger and the exact angle."},{h:"CROs & VPs of Sales",p:"You donât need more leads; you need reps in conversations. Stan removes the research time."},{h:"Heads of Growth / Demand Gen",p:"Trade volume blasts for a living ICP thesis that learns from who replies. Every account comes with a reason âwhy nowâ."},{h:"SDR / BDR teams",p:"Each rep starts the day with pre-researched accounts and ready sequences. They prospect on day one."},{h:"Outbound & lead-gen agencies",p:"Thesis-grade targeting for every client without hiring a research team."},{h:"Consulting & B2B services firms",p:"Long, consultative cycles where the angle is everything. Stan finds the trigger and the value angle before you reach out."}],founderEyebrow:"Why trust us",founderName:"Alexandre G. Busson",founderRole:"Founder & CEO · Proplace · ex-Ardian, Partech, Leboncoin M&A",founderRows:[{co:"Ardian â LBO Analyst",desc:"Sourcing, screening and deep diligence on dozens of European companies â separating signal from noise at scale."},{co:"Partech Ventures â Senior Associate",desc:"Sourcing and qualifying European startups pre-seed â Series B. Hundreds of accounts read, the right ones found early."},{co:"Leboncoin â M&A Director",desc:"End-to-end target sourcing, outreach and negotiation. The craft of reaching the right decision-maker with the right angle â productised in Stan."}],founderQuote:"« The future of B2B prospecting is autonomous â inspired by the seller, not a replacement for them. Stan captures what you know about your buyer and deploys it, account by account, every day. »",secEyebrow:"Security & Compliance",secTitle:"Built on trusted infrastructure.",secIntro:e.jsx(e.Fragment,{children:"Your thesis, your pipeline, your prospects. We treat your data like the strategic asset it is â encrypted, proxied server-side, and running on SOC 2-certified platforms."}),secInherited:"Inherited from our providers",sec:[{h:"SOC 2-certified infrastructure",p:"Data and memos stored on Airtable (SOC 2 Type II, ISO 27001); compute on Modal (SOC 2 Type II). We operate as your GDPR data processor."},{h:"Encryption in transit & at rest",p:"TLS 1.3 in transit, AES-256 at rest. API credentials in Modalâs secret vault."},{h:"Server-side data access",p:"Every read/write is proxied through our backend. No database credentials reach the client; each account is isolated."},{h:"Authenticated endpoints",p:"Token required, Proplace domains only (CORS). Shared links use 256-bit tokens."},{h:"AI without training exposure",p:"Providers on enterprise terms that bar training on your prompts."},{h:"SOC 2 & ISO 27001 roadmap",p:"Security program in progress, formal certification planned as Proplace scales."}],pricingEyebrow:"Pricing",pricingTitle:e.jsxs(e.Fragment,{children:["One engine. One price. ",e.jsx("em",{children:"Profitable from the first deal."})]}),pricingLead:"Built for offers where a single closed deal pays for Stan. A complete, self-contained edition â no Proplace+ option.",priceTag:"engine · complete edition",priceName:"Proplace OS â Outbound B2B Edition",priceTagline:"Your targeted-prospecting engine.",priceSetup:"Setup â¬5,000 â one time. We hand-build your ICP thesis, calibrate the gate to your judgment, and wire your sending tool. No second setup, ever.",priceAmount:"â¬1,500",pricePeriod:e.jsx(e.Fragment,{children:"excl. VAT / month â quarterly billing, charged at go-live (the 2nd Monday)."}),priceCalc:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"The math is simple: â¬5,000 setup + â¬4,500 for your first quarter = â¬9,500."})," A single new closed customer covers all of it â and usually far more. After that, at â¬1,500/month, every deal is net."]}),priceCommit:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"No fixed-term commitment â quarterly auto-renewal."})," Stop whenever you want: the quarter already paid isnât refunded (nor the setup), but nothing forces you to renew the next one. No money-back; your freedom is not renewing, whenever you decide."]}),priceGroup:"Included",priceFeats:["Your growth thesis, built for you â ICPs + a full map of your offer","Daily multi-channel sourcing (~15 channels)","A sales memo + ready sequence on every match","Dedicated interface + online thesis editor","Push to your sending tool / CRM","Weekly learning loop (YES / NO)"],priceN
3107ote:"No Proplace+ option â this edition stands on its own.",priceCta:"Set up my engine",tlEyebrow:"From call to go-live",tlH2:"Live by the 2nd Monday.",timeline:[{d:"Day 0",h:"Discovery call · 45 min",p:"Stan analyses one of your real target accounts live. We also check together that a new customer is worth enough for Stan to pay for itself from the first signature. No commitment."},{d:"Kickoff",h:"Setup · â¬5,000",p:"We map your offer and your existing customers into a first ICP thesis."},{d:"Thesis",h:"Encoding · 1h",p:"You explain what you sell and to whom. Stan derives your ICPs."},{d:"Calibration",h:"A few days",p:"1â2 thesis updates so the gate matches your judgment."},{d:"2nd Monday",h:"Go-live · â¬1,500/mo",p:"First sales memos in your inbox. Quarterly billing starts."},{d:"After",h:"It compounds",p:"The thesis versions up every week. Your list becomes irreplicable."}],impactEyebrow:"Impact",impactTitle:"What typically changes in 90 days.",impactNote:"Directional â based on how the engine is built, not a guarantee.",impact:[{n:"10Ã",h:"More accounts screened",p:"Cover your whole market â ~10à what one rep can research by hand â without adding headcount."},{n:"90%",h:"Less research time",p:"Your reps spend their hours selling, not list-building."},{n:"1 deal",h:"pays for everything",p:"A single closed customer covers your setup and first quarter (â¬9,500). Every deal after is net."},{n:"Every",h:"message carries an angle",p:"Every approach leads with a reason to reply; anything unverified is flagged before itâs sent."}],faqEyebrow:"FAQ",faqTitle:"The questions we get.",faq:[{q:"How is this different from Apollo or Clay?",a:"Apollo and Clay enrich a list you already built â you still decide who to target and what to say. Stan decides which accounts are worth it and why now, then writes the angle and the sequence. Theyâre the plumbing; Stan is the strategy."},{q:"How many meetings can I expect?",a:"Stan isnât measured in prospect volume, but in actionable CALLs â high-fit accounts with a trigger and a ready sequence. You steer on what matters: qualified meetings and pipeline generated, not a lead counter. Deliberately tight: a handful of high-fit CALLs a day, not hundreds. During calibration (M1âM2), Stan surfaces the top of the range to give you ammunition right away; then it tightens as precision climbs."},{q:"Do you deliver contact lists?",a:"The product isnât the list â itâs the memo. Your dashboard shows the shortlist Stan qualifies (some still under analysis), but nothing is pushed to you for action without its memo: every CALL comes with its trigger, angle and sequence. If you want raw contact volume to enrich yourself, Stan isnât the right tool."},{q:"How big does a deal need to be to pay off?",a:"Do the math: your first quarter costs â¬9,500 (â¬5,000 setup + â¬4,500 subscription), and youâre then free to leave. As soon as a new customer is worth ~â¬10K+ (contract, first year or LTV), a single closed deal already covers everything â and usually far more. Beyond that, every signature is net. If your deals are worth a few hundred euros, it takes too many to pay off: weâll tell you straight on the call rather than sell you something that wonât hold."},{q:"Does it replace my SDR?",a:"No â it arms them. They stop searching and focus on the conversation."},{q:"Does it replace my sending tool?",a:"No. Stan supplies the targets, the angle and the sequence; your tool (Lemlist, Instantly, GetSalesâ¦) does the sending."},{q:"Why a â¬5,000 setup?",a:"Itâs bespoke engineering, not onboarding: we reverse-engineer what you sell into a working sourcing-and-qualification thesis and tune it against real accounts before go-live. Done once, never repeated."},{q:"Is there a commitment?",a:"No fixed term. Billing is quarterly, with tacit renewal: stop whenever you want, no justification. The current quarter and the setup arenât refunded â thatâs work already done â but youâre never bound to renew the next quarter. Thatâs the âguaranteeâ: the freedom not to renew, not a refund."},{q:"What if a prospect doesnât fit?",a:"You click NO; the engine learns and tightens your ICP for next week."},{q:"My data / my offer?",a:"Your thesis is private and editable anytime. Providers are on enterprise terms that bar training their models on your prompts."},{q:"Time to launch?",a:"Go-live on the 2nd Monday: thesis built, engine wired, first memos."},{q:"Is there a Proplace+ for outbound?",a:"No. This edition is self-contained â one engine, one price, no add-on."}],ctaEyebrow:"Get started",ctaH:e.jsxs(e.Fragment,{children:["Give your outbound ",e.jsx("em",{children:"a reason to reply."})]}),ctaP:e.jsxs(e.Fragment,{children:["In 45 minutes, we run Stan live on one of your real target accounts â trigger,
3107crossed use case, ready sequence, on screen. We also confirm together that a customer is worth enough for Stan to pay for itself from the first signature.",e.jsx("br",{}),"You leave with a concrete prospect and the exact angle. Zero commitment."]}),ctaBtn:"Set up my engine",ctaNote:"Or contact: "},fr:{nav:[{id:"how",label:"Méthode"},{id:"memo",label:"Le mémo"},{id:"proof",label:"Preuve"},{id:"founder",label:"Ãquipe"},{id:"pricing",label:"Tarifs"},{id:"faq",label:"FAQ"}],badge:"Ãdition Outbound B2B",heroTitle:e.jsxs(e.Fragment,{children:["Du signal à la ",e.jsx("em",{children:"signature."})]}),heroSub:e.jsx(e.Fragment,{children:"Stan trouve les comptes prêts à acheter â et vous écrit comment les aborder."}),heroNote:"Pas une liste froide. Une raison de contacter et lâangle exact, sur les entreprises qui devraient devenir vos clientes. De nouveaux comptes qualifiés, chacun avec son mémo de vente prêt à envoyer, dans votre boîte mail chaque matin.",ctaPrimary:"Configurer mon moteur",ctaSecondary:"Voir Stan tourner sur un de vos comptes (45 min)",sigEyebrow:"Signaux dâachat · exemples",sigTitle:e.jsxs(e.Fragment,{children:["Stan lit les signaux dâachat ",e.jsx("em",{children:"avant quâils nâarrivent dans le CRM de vos concurrents."})]}),sigLead:"On obtient une réponse quand on arrive la semaine exacte où quelque chose a changé chez le prospect. Stan surveille une quinzaine de canaux et transforme chaque changement en raison de contacter â des mois avant que le marché ne le remarque.",sigNote:"Exemples illustratifs â pas des données en direct.",signals:[{icon:"ð¸",tag:"Levée · Série B",txt:"Vient de lever 40 M⬠pour sâinternationaliser : nouveau budget, nouvel enjeu, nouvelle urgence.",meta:"Source : flux des levées."},{icon:"ð§âð¼",tag:"Recrue clé",txt:"Recrute un premier VP Revenue venu dâun logo que vous servez déjà : un champion qui connaît votre catégorie.",meta:"Source : signal changement de poste LinkedIn."},{icon:"ð",tag:"Lancement",txt:"Lance une gamme dans une verticale pour laquelle votre outil a été pensé.",meta:"Source : changelog + presse."},{icon:"âï¸",tag:"Nouvelle réglementation",txt:"Une règle rend leur dispositif actuel non conforme : une échéance que vous savez résoudre.",meta:"Source : moteur médias sectoriels."},{icon:"ð",tag:"Changement de direction",txt:"Nouveau CEO issu dâun compte signé lâan dernier : relation déjà chaude.",meta:"Source : suivi des décideurs."},{icon:"ð ",tag:"Stack technique",txt:"Vient de déployer lâoutil exact que vous remplacez : la fenêtre pour les faire basculer est ouverte, maintenant.",meta:"Source : moteur de détection de stack."}],sigFoot:"Chaque signal devient un mémo de vente : qui contacter, pourquoi maintenant, et lâangle qui déclenche la réponse.",whatEyebrow:"Quâest-ce que Stan",whatTitle:e.jsxs(e.Fragment,{children:["La recherche de votre meilleur commercial â ",e.jsx("em",{children:"sur chaque compte, chaque matin."})]}),whatP1:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Stan surveille tout ce qui bouge sur votre marché"})," et qualifie chaque compte avec la rigueur dâun excellent commercial qui prépare son rendez-vous. Sur chaque match, il vous remet un mémo dâune page : le déclencheur, lâangle qui croise leur situation et votre offre, le concurrent à déloger, qui appeler, et une séquence prête à envoyer."]}),whatP2:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Vous gardez le contrôle â sans la corvée."})," La plupart du temps : un brief court, rien à faire. Quand Stan trouve un compte à fort potentiel avec un déclencheur actif, vous répondez ",e.jsx("strong",{children:"OUI"})," ou ",e.jsx("strong",{children:"NON"})," â depuis lâemail, le mémo, nâimporte où. Deux minutes."]}),whatP3:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"OUI"})," â Stan rédige la séquence dâapproche et la pousse vers votre outil dâenvoi. ",e.jsx("strong",{children:"NON"})," â Stan encode le rejet et resserre votre ICP. Chaque décision rend les prospects du lendemain plus précis."]}),whatP4:e.jsxs(e.Fragment,{children:["Il ne remplace ni votre SDR ni votre outil dâenvoi. Il leur donne ce qui leur manque : ",e.jsx("strong",{children:"le bon compte, le déclencheur, et lâangle."})]}),stat1n:"~15",stat1:"canaux de sourcing scrutés chaque matin",stat2n:"52Ã",stat2:"mises à jour de votre thèse ICP par an â contre une liste figée",stat3n:"1 deal",stat3:"et Stan est remboursé : une seule signature couvre votre mise + premier trimestre (9 500 â¬)",
3107stat4n:"2áµ lun.",stat4:"go-live : thèse construite, moteur branché, premiers mémos",whyEyebrow:"Pourquoi Stan",whyTitle:e.jsxs(e.Fragment,{children:["Un SDR à 60â80K⬠vs 1 500â¬/mois.",e.jsx("br",{}),"Opérationnel dès le 2áµ lundi."]}),whyIntro:"Un SDR humain est limité par ses heures, sa liste et sa patience. Stan fait la recherche sur chaque compte de votre marché avec la même rigueur â chaque jour, indéfiniment.",thHuman:"SDR / prospection humaine",thStan:"Stan â prospecteur augmenté par lâIA",whyRows:[{k:"Sourcing",a:"Scrolle Apollo et LinkedIn quelques heures par jour. Une liste figée â les comptes que tout le monde démarche aussi.",b:"~15 canaux chaque matin. Les comptes remontent la semaine exacte où un signal se déclenche."},{k:"Recherche",a:"Quelques minutes par compte, puis un template générique. La qualité chute avec la fatigue.",b:"Un mémo de vente complet en quelques minutes, zéro variation. La même profondeur sur le compte n°1 et le n°500."},{k:"Ciblage",a:"Une liste figée, achetée une fois. Elle nâapprend jamais de qui a répondu ou signé.",b:"Une thèse dâICP vivante, réécrite chaque semaine sur vos OUI/NON."},{k:"Temps",a:"Jusquâà 80 % de la semaine engloutis par la recherche et lâentretien du CRM.",b:"Zéro temps de recherche. Votre équipe passe ses heures à parler aux prospects."},{k:"Coût",a:"60â80Kâ¬/an chargé â plus 3 mois de montée en puissance et le turnover.",b:"1 500â¬/mois + 5 000⬠de mise en route unique. Opérationnel dès le 2áµ lundi. Comptes illimités."}],howEyebrow:"Comment ça marche",howTitle:e.jsxs(e.Fragment,{children:["De ce que vous vendez à ",e.jsx("em",{children:"qui contacter, pourquoi, et comment."})]}),howLead:"Stan ne part pas dâun template générique. Il part de votre offre â encodée une fois, exécutée chaque jour, affinée chaque semaine.",steps:[{num:"Ãtape 1 · Une fois",title:"Votre thèse de croissance",desc:"En une heure, on transforme ce que vous vendez (site, produit, tarifs, clients) en vos ICP : verticale, persona décideur, géographie, et le problème exact que vous résolvez.",outTitle:"Le résultat",out:e.jsxs(e.Fragment,{children:["Une thèse dâICP vivante â ",e.jsx("strong",{children:"votre cerveau de prospection, versionné."})]})},{num:"Ãtape 2 · Chaque jour",title:"Des comptes qualifiés",desc:"Le moteur source en continu sur ~15 canaux. Chaque entreprise franchit un filtre strict â MATCH ou NO MATCH â avec le raisonnement affiché. Aucun bruit ne vous parvient.",outTitle:"Le résultat",out:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Une liste courte notée"})," dans votre tableau de bord â filtrable par verticale, géographie et déclencheur."]})},{num:"Ãtape 3 · Chaque jour",title:"Un mémo de vente sur chaque match",desc:"Chaque MATCH déclenche un mémo complet, puis lâun des quatre verdicts.",outTitle:"Le résultat",out:e.jsxs(e.Fragment,{children:["Un mémo prêt à décider + une séquence â ",e.jsx("strong",{children:"seuls les CALL vous parviennent."})]})}],verdictsTitle:"Les quatre verdicts â un seul requiert votre attention",verdicts:[{cls:"call",label:"CALL",color:"var(--green-dk)",p:"ICP fort + déclencheur actif. Remonté avec un OUI / NON et la séquence déjà rédigée."},{cls:"consider",label:"CONSIDER",color:"#b9651a",p:"Bon profil, un fait manquant. Stan attend, puis bascule en CALL ou PASS. Aucune action."},{cls:"monitor",label:"MONITOR",color:"#2371a5",p:"Bon ICP, pas encore de déclencheur. Point de contrôle à 90 jours. Aucune action."},{cls:"pass",label:"PASS",color:"var(--red)",p:"Hors ICP. La thèse se resserre pour la semaine suivante. Aucune action."}],verdictsFoot:e.jsxs(e.Fragment,{children:["Trois des quatre sont traités en autonomie. Votre seul rôle : ",e.jsx("strong",{children:"OUI ou NON sur les CALL."})," Même si vous nâouvrez pas un seul email cette semaine, rien ne passe à travers."]}),memoEyebrow:"Le mémo de vente",memoTitle:e.jsxs(e.Fragment,{children:["Ce qui arrive sur chaque prospect. ",e.jsx("em",{children:"Pas une fiche de données â un brief dâattaque."})]}),anat:[{k:"Le déclencheur",p:"Lâévénement qui crée lâurgence maintenant."},{k:"Le cas dâusage croisé",p:"Leur situation à votre capacité â la valeur débloquée."},{k:"Le concurrent à déloger",p:"Lâoutil probablement en place + la faille par laquelle entrer."},{k:"La preuve à dégainer",p:"Le logo / cas client le plus pertinent pour CE prospect."},{k:"Le décideur & le comité",p:"Qui contacter ; sur un grand compte : champion / acheteur / bloqueurs."},{k:"Découverte & objections",p:"Questions, objections probables et réponses."},{k:"La séquence dâapproche",p:"3 messages prêts à envoyer, adaptés au canal, qui nâaffirment que des faits vérifiés."},{k:"Le verdict",p:"CALL · CONSIDER · MONITOR · PASS, dâun coup dâÅil, avec le raisonnement."}],memoFoot:e.jsx(e.Fragment,{children:"Vous récupérez tout dans une interface dédiée (vue leads + éditeur de thèse), et la séquence se pousse vers votre outil dâenvoi â Lemlist, Instantly, La Growth Machine, GetSalesâ¦"}),memoLock:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"On ne vous pousse jamais un compte à contacter sans son mémo."})," Le tableau de bord affiche la shortlist que Stan qualifie en continu ; ce qui vous remonte pour action â chaque CALL â arrive toujours avec son déclencheur, son angle et sa séquence. Stan ne vend pas du volume de contacts : il vend des raisons de contacter, prêtes à exécuter."]}),ritualEyebrow:"Le rituel quotidien",ritualTitle:"Stan pilote tout. Vous répondez OUI ou NON â uniquement quand cela compte.",ritualP1:e.jsxs(e.Fragment,{children:["Stan détecte, qualifie et rédige chaque jour â sans rien vous demander. Lorsquâil déniche un compte à fort potentiel avec un déclencheur actif, il arrive dans votre brief quotidien. ",e.jsx("strong",{children:"OUI ou NON â dès que vous avez deux minutes."})]}),ritualP2:e.jsxs(e.Fragment,{children:["Pas le temps cette semaine ? Les comptes CONSIDER et MONITOR continuent de mûrir tout seuls â ",e.jsx("strong",{children:"rien ne se perd."})," Vos CALL en attente patientent en haut du brief du lundi."]}),yesLabel:"â OUI",yesBody:e.jsx(e.Fragment,{children:"Stan rédige la séquence et la pousse vers votre outil dâenvoi. Les angles gagnants reviennent en boucle."}),noLabel:"â NON",noBody:e.jsx(e.Fragment,{children:"Stan encode le motif de rejet. Une ligne de raisonnement le fait converger bien plus vite sur cet ICP."}),imgAlt:"Brief de prospection quotidien â aperçu mobile",tl1t:"Chaque jour",tl1h:"Brief de prospection",tl1p:"Sourcé, qualifié, rédigé. La plupart du temps : aucune action. Quand Stan déniche un compte à fort potentiel : OUI · NON en un clic.",tl2t
3107:"Lundi",tl2h:"Centre de commande hebdo",tl2p:e.jsxs(e.Fragment,{children:["Chaque OUI / NON est traité. ",e.jsx("strong",{children:"OUI"})," renforce ce qui marche ; ",e.jsx("strong",{children:"NON"})," réécrit le ciblage. La logique qui produit les prospects de la semaine suivante."]}),tl3t:"3 mois",tl3h:"Une liste impossible à copier",tl3p:e.jsx(e.Fragment,{children:"Votre thèse ICP reflète qui répond et achète vraiment. Pas un outil que vous louez ; un actif que vous construisez."}),flyEyebrow:"Lâavantage qui grossit tout seul",flyH2:"52 mises à jour dâICP par an, contre une liste achetée une fois.",flyBody1:e.jsx(e.Fragment,{children:"Lâoutbound classique achète une liste figée et la brûle. Les taux de réponse chutent à mesure que la liste vieillit, et rien nâapprend de qui a vraiment répondu."}),flyBody2:e.jsxs(e.Fragment,{children:["Stan réécrit votre thèse ICP chaque semaine sur vos vrais OUI/NON. Au bout de quelques mois, votre liste de cibles est ",e.jsx("strong",{children:"structurellement inimitable."})]}),flyManualHead:"Outbound classique",flyManual:["Liste figée, achetée une fois","Séquences génériques, copiées-collées","Aucune raison « pourquoi maintenant »","Les SDR passent la semaine à chercher","Le taux de réponse décline avec le temps"],flyStanHead:"Stan â Outbound B2B",flyStan:["Thèse ICP mise à jour 52à / an","~15 canaux qui scannent chaque matin","Un déclencheur explicite par compte","Les SDR se concentrent sur la conversation","La précision sâaccumule chaque semaine"],flyStats:[{n:"~15",d:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Canaux lus chaque matin"})," â signaux faibles, recrutements, lancements, registres, GitHub, Exa."]})},{n:"52Ã",d:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Mises à jour dâICP par an."})," Le ciblage de chaque lundi est plus affûté que celui de la semaine dernière."]})},{n:"3 mois",d:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Avant que votre liste devienne structurellement inimitable"})," â bâtie sur des décisions cumulées."]})},{n:"0",d:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Heure de recherche pour vos commerciaux."})," Leurs heures vont à la conversation, pas à la recherche."]})}],proofEyebrow:"La preuve · mesurée chaque lundi",proofTitle:"Le vrai KPI, câest le pipeline. Le taux de OUI est notre indicateur avancé de ciblage.",proofIntro:e.jsxs(e.Fragment,{children:["Stan ne fait remonter que les comptes à plus fort potentiel (les CALL). Vous répondez OUI ou NON. Votre ",e.jsx("strong",{children:"taux de OUI"})," mesure à quel point Stan cible comme vous â câest un indicateur de qualité, pas la promesse. ",e.jsx("strong",{children:"Ce que vous mesurez, vous, câest les RDV qualifiés et les deals attribuables à Stan."})," Règle simple : sur un an, un seul deal signé rembourse Stan."]}),proofCaption:"Trajectoire cible du taux de OUI â votre courbe réelle vous est rapportée chaque lundi :",proofSteps:[{pct:"20â30%",period:"Mois 1",desc:"Stan tourne sur la thèse telle que vous lâavez écrite. Beaucoup de comptes solides ne collent pas encore à votre jugement tacite. Chaque NON est très instructif."},{pct:"60â70%",period:"Mois 2",desc:"Des dizaines de OUI/NON ont déjà réécrit le sourcing et la qualification. Stan reconnaît les comptes que vous rejetez sans que vous lâexpliquiez."},{pct:"~85%",period:"Mois 3",desc:"Presque chaque compte remonté est un que vous approcheriez. Le ciblage de Stan reflète le vôtre."}],proofFoot:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Munitions dès le premier mois."})," Pendant le calibrage (M1-M2), pendant que le taux de OUI monte, Stan remonte délibérément le ",e.jsx("strong",{children:"haut de la fourchette"})," de CALL pour vous donner de quoi remplir le pipeline tout de suite â pas seulement une fois le filtre parfaitement réglé. Vous ne subissez pas un trou dâair le temps que le moteur apprenne."]}),chartY:"Taux de OUI",chartGoLive:"Go-live",chartX:"Mois depuis le go-live",wp1t:"Mois 1",wp1v:"~25 % OUI",wp2t:"Mois 2",wp2v:"~65 % OUI",wp3t:"Mois 3",wp3v:"~85 % OUI",chartAria:"Trajectoire cible du taux de OUI, dâenviron 25 % au mois 1 à environ 85 % au mois 3",archEyebrow:"Architecture prête à lâemploi",archTitle:"Autonome, ou branché sur votre outil dâenvoi.",archDesc:"Utilisez lâinterface de Stan, ou poussez chaque séquence directement vers Lemlist, Instantly, La Growth Machine, GetSales ou votre CRM. Stan fournit les cibles et lâangle ; votre stack se charge de lâenvoi.",whoEyebrow:"à qui ça sâadresse",whoTitle:"Conçu pour les équipes qui vendent une offre à forte valeur â où un seul deal signé rembourse Stan.",whoIntro:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Le critère dâentrée : un nouveau client vous rapporte au moins ~10 K⬠(contrat, première année ou LTV)."})," à ce niveau, un seul deal signé suffit à rembourser tout ce que vous avez engagé â votre mise en route et votre premier trimestre, soit 9 500 ⬠â et chaque deal suivant est du net. En dessous, il faut empiler plusieurs deals pour rentrer dans vos frais : ce nâest probablement pas pour vous, et on vous le dira franchement à lâappel."]}),who:[{h:"Fondateurs & CEO qui vendent encore",p:"Vous signez vous-même les gros logos. Stan vous remet chaque jour une shortlist avec déclencheur actif et angle exact."},{h:"CRO & VP Sales",p:"Vous ne voulez pas plus de leads ;
3107 vous voulez vos commerciaux en conversation. Stan supprime le temps de recherche."},{h:"Head of Growth / Demand Gen",p:"Finissez-en avec lâarrosage de masse : un ICP vivant qui apprend de qui répond. Chaque compte arrive avec une raison « pourquoi maintenant »."},{h:"Ãquipes SDR / BDR",p:"Chaque commercial démarre la journée avec des comptes recherchés et des séquences prêtes. Il prospecte dès le jour 1."},{h:"Agences outbound & lead-gen",p:"Du ciblage de niveau thèse pour chaque client sans monter un banc de recherche."},{h:"Cabinets de conseil & services B2B",p:"Cycles longs et consultatifs où lâangle fait tout. Stan trouve le déclencheur et cadre la valeur avant votre premier contact."}],founderEyebrow:"Pourquoi nous faire confiance",founderName:"Alexandre G. Busson",founderRole:"Fondateur & CEO · Proplace · ex-Ardian, Partech, M&A Leboncoin",founderRows:[{co:"Ardian â Analyste LBO",desc:"Sourcing, screening et diligence sur des dizaines dâentreprises européennes : séparer le signal du bruit à grande échelle."},{co:"Partech Ventures â Senior Associate",desc:"Sourcing et qualification de startups du pre-seed à la Série B. Des centaines de comptes lus, les bons trouvés tôt."},{co:"Leboncoin â Directeur M&A",desc:"Sourcing de cibles, approche et négociation de bout en bout. Lâart dâatteindre le bon décideur avec le bon angle â productisé dans Stan."}],founderQuote:"« Le futur de la prospection B2B est autonome â inspiré par le commercial, pas substitué à lui. Stan capture ce que vous savez de votre acheteur et le déploie, compte par compte, chaque jour. »",secEyebrow:"Sécurité & Conformité",secTitle:"Bâti sur une infrastructure de confiance.",secIntro:e.jsx(e.Fragment,{children:"Votre thèse, votre pipeline, vos prospects. Nous traitons vos données comme lâactif stratégique quâelles sont â chiffrées, relayées côté serveur, exécutées sur des plateformes certifiées SOC 2."}),secInherited:"Hérité de nos prestataires",sec:[{h:"Infrastructure certifiée SOC 2",p:"Données et mémos stockés sur Airtable (SOC 2 Type II, ISO 27001) ; calculs sur Modal (SOC 2 Type II). Nous agissons comme votre sous-traitant au sens du RGPD."},{h:"Chiffrement en transit & au repos",p:"TLS 1.3 en transit, AES-256 au repos. Identifiants dâAPI dans le coffre à secrets de Modal."},{h:"Accès aux données côté serveur",p:"Chaque lecture/écriture est relayée par notre backend. Aucun identifiant de base nâatteint le client ; chaque compte est isolé."},{h:"Points dâaccès authentifiés",p:"Jeton requis, domaines Proplace uniquement (CORS). Liens partagés en jetons 256 bits."},{h:"IA sans exposition à lâentraînement",p:"Fournisseurs sur offres entreprise qui interdisent dâentraîner sur vos prompts."},{h:"Feuille de route SOC 2 & ISO 27001",p:"Programme de sécurité en construction, certification formelle prévue à mesure que Proplace se développe."}],pricingEyebrow:"Tarifs",pricingTitle:e.jsxs(e.Fragment,{children:["Un seul moteur. Un seul tarif. ",e.jsx("em",{children:"Rentable dès le premier deal."})]}),pricingLead:"Pensé pour les offres où un seul deal signé rembourse Stan. Une édition complète et autonome â sans option Proplace+.",priceTag:"moteur · édition complète",priceName:"Proplace OS â Ãdition Outbound B2B",priceTagline:"Votre moteur de prospection ciblée.",priceSetup:"Mise en route 5 000 ⬠â une seule fois. On construit à la main votre thèse dâICP, on calibre le gate sur votre jugement, et on branche votre outil dâenvoi. Plus jamais de frais dâinstallation.",priceAmount:"1 500 â¬",pricePeriod:e.jsx(e.Fragment,{children:"HT / mois â paiement trimestriel, débité au go-live (le 2áµ lundi)."}),priceCalc:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Le calcul est simple : 5 000 ⬠de mise en route + 4 500 ⬠pour votre premier trimestre = 9 500 â¬."})," Un seul nouveau client signé rembourse lâensemble â et fait généralement bien plus. Ensuite, à 1 500 â¬/mois, chaque deal est du net."]}),priceCommit:e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Sans engagement de durée â reconduction tacite par trimestre."})," Vous arrêtez quand vous voulez : le trimestre déjà réglé nâest pas remboursé (ni la mise en route), mais rien ne vous oblige à renouveler le suivant. Pas de money-back ; votre liberté, câest de ne pas reconduire, quand vous le décidez."]}),priceGroup:"Inclus",priceFeats:["Construction de votre thèse de croissance â ICP + cartographie de votre offre","Sourcing quotidien multi-canal (~15 canaux)","Un mémo de vente + séquence prête sur chaque match","Interface dédiée + éditeur de thèse en ligne","Push vers votre outil dâenvoi / CRM","Boucle dâapprentissage hebdomadaire (OUI / NON)"],priceN
3107ote:"Sans option Proplace+ â cette édition est complète à elle seule.",priceCta:"Configurer mon moteur",tlEyebrow:"De lâappel au go-live",tlH2:"En route dès le 2áµ lundi.",timeline:[{d:"Jour 0",h:"Appel de cadrage · 45 min",p:"Stan analyse un de vos comptes cibles réels en direct. On vérifie aussi ensemble quâun nouveau client vaut assez pour que Stan soit rentable dès la première signature. Sans engagement."},{d:"Lancement",h:"Mise en route · 5 000 â¬",p:"On cartographie votre offre et vos clients en une première thèse ICP."},{d:"Thèse",h:"Encodage · 1h",p:"Vous expliquez ce que vous vendez et à qui. Stan en dérive vos ICP."},{d:"Calibrage",h:"Quelques jours",p:"1 à 2 mises à jour pour que le filtre colle à votre jugement."},{d:"2áµ lundi",h:"Go-live · 1 500 â¬/mois",p:"Premiers mémos dans votre boîte. La facturation trimestrielle démarre."},{d:"Ensuite",h:"Ãa sâaccumule",p:"La thèse monte en version chaque semaine. Votre liste devient inimitable."}],impactEyebrow:"Impact",impactTitle:"Ce qui change, en général, en 90 jours.",impactNote:"Ordres de grandeur â liés à la conception du moteur, pas une garantie.",impact:[{n:"10Ã",h:"De comptes passés au crible",p:"Couvrez tout votre marché, ~10à ce quâun commercial traite à la main, sans étoffer vos effectifs."},{n:"90%",h:"De temps de recherche en moins",p:"Vos commerciaux passent leurs heures à vendre, pas à bâtir des listes."},{n:"1 deal",h:"rembourse tout",p:"Un seul client signé couvre votre mise en route et votre premier trimestre (9 500 â¬). Chaque deal suivant est du net."},{n:"Chaque",h:"message porte un angle",p:"Chaque approche sâouvre sur une raison de répondre ; tout fait non vérifié est signalé avant lâenvoi."}],faqEyebrow:"FAQ",faqTitle:"Les questions quâon nous pose.",faq:[{q:"Encore un Apollo / Clay ?",a:"Non. Apollo et Clay enrichissent une liste que vous avez déjà construite â câest encore vous qui choisissez qui cibler et quoi dire. Stan choisit quels comptes en valent la peine et pourquoi maintenant, puis écrit lâangle et la séquence. Eux, câest la tuyauterie ; Stan, câest la stratégie."},{q:"Combien de RDV puis-je en attendre ?",a:"Stan ne se mesure pas en volume de prospects, mais en CALL actionnables â des comptes à fort potentiel, avec déclencheur et séquence prête. Vous pilotez sur ce qui compte vraiment : RDV qualifiés et pipeline généré, pas un compteur de leads. Volontairement resserré : quelques CALL à fort potentiel par jour, pas des centaines. Pendant le calibrage (M1-M2), Stan remonte le haut de fourchette pour vous donner des munitions tout de suite ; ensuite il resserre à mesure que la précision monte."},{q:"Vous livrez des listes de contacts ?",a:"Le produit, ce nâest pas la liste â câest le mémo. Votre tableau de bord montre la shortlist des comptes que Stan qualifie (certains encore en cours dâanalyse), mais rien ne vous est poussé pour action sans son mémo : chaque CALL arrive avec son déclencheur, son angle et sa séquence. Si vous cherchez du volume de contacts à enrichir vous-même, Stan nâest pas le bon outil."},{q:"Quelle taille de deal faut-il pour que ce soit rentable ?",a:"Faites le calcul : votre premier trimestre coûte 9 500 ⬠(5 000 ⬠de mise en route + 4 500 ⬠dâabonnement), et vous êtes ensuite libre de partir. Dès quâun nouveau client vaut ~10 Kâ¬+ (contrat, première année ou LTV), un seul deal signé rembourse déjà tout â et fait généralement bien plus. Au-delà , chaque signature est du net. Si vos deals valent quelques centaines dâeuros, il en faut trop pour rentabiliser : on vous le dira franchement à lâappel plutôt que de vous vendre quelque chose qui ne tiendra pas."},{q:"Ãa remplace mon SDR ?",a:"Non, ça lâarme. Il arrête de chercher et se concentre sur la conversation."},{q:"Ãa remplace mon outil dâenvoi ?",a:"Non. Stan fournit les cibles, lâangle et la séquence ; votre outil (Lemlist, Instantly, GetSalesâ¦) se charge de lâenvoi."},{q:"Pourquoi 5 000 ⬠de mise en route ?",a:"Câest de lâingénierie sur mesure, pas de lâonboarding : on transforme ce que vous vendez en une thèse de sourcing et de qualification opérationnelle, calibrée sur de vrais comptes avant le go-live. Fait une fois, jamais répété."},{q:"Y a-t-il un engagement ?",a:"Pas de durée imposée. La facturation est trimestrielle, avec reconduction tacite : vous pouvez arrêter quand vous voulez, sans justification. Le trimestre en cours et la mise en route ne sont pas remboursés â
3107câest du travail déjà réalisé â mais vous nâêtes jamais tenu de renouveler le trimestre suivant. La « garantie », câest ça : la liberté de ne pas reconduire, pas un remboursement."},{q:"Et si un prospect ne correspond pas ?",a:"Vous cliquez NON ; le moteur apprend et resserre votre ICP pour la semaine suivante."},{q:"Mes données / mon offre ?",a:"Votre thèse est privée et éditable à tout moment. Nos fournisseurs sont sur des offres entreprise qui interdisent dâentraîner leurs modèles sur vos prompts."},{q:"Délai de mise en route ?",a:"Go-live au 2áµ lundi : thèse construite, moteur branché, premiers mémos."},{q:"Y a-t-il un Proplace+ pour lâoutbound ?",a:"Non. Cette édition est complète à elle seule â un moteur, un tarif, sans option."}],ctaEyebrow:"Commencer",ctaH:e.jsxs(e.Fragment,{children:["Donnez à votre outbound ",e.jsx("em",{children:"une raison de répondre."})]}),ctaP:e.jsxs(e.Fragment,{children:["En 45 minutes, on fait tourner Stan en direct sur un de vos comptes cibles réels â déclencheur, cas dâusage croisé, séquence prête, à lâécran. On valide aussi ensemble quâun client vaut assez pour que Stan soit rentable dès la première signature.",e.jsx("br",{}),"Vous repartez avec un prospect concret et lâangle exact. Sans aucun engagement."]}),ctaBtn:"Configurer mon moteur",ctaNote:"Ou contactez : "}};function j5(){ht({en:{title:"Proplace OS â Outbound B2B Edition",description:"The same Stan engine, aimed at your next customers: it finds the B2B accounts about to buy and writes the sales memo â trigger, crossed use case, and the exact angle. A single closed deal pays for Stan. Live by the 2nd Monday."},fr:{title:"Proplace OS â Ãdition Outbound B2B",description:"Le même moteur Stan, braqué sur vos prochains clients : il trouve les comptes B2B prêts à acheter et rédige le mémo de vente â déclencheur, cas dâusage croisé, et lâangle exact. Un seul deal signé rembourse Stan. Opérationnel dès le 2áµ lundi."}});const{lang:t}=ae(),n=y5[t],[r,i]=m.useState(!1),s=()=>i(!0);return e.jsxs("div",{children:[e.jsx("style",{children:w5}),e.jsx(zn,{items:n.nav}),e.jsx("div",{id:"hero",children:e.jsxs("div",{className:"wrap-wide",style:{textAlign:"center"},children:[e.jsx("img",{src:"/logo.png",className:"hero-logo",style:{marginBottom:18,display:"block",marginLeft:"auto",marginRight:"auto"},alt:"Proplace"}),e.jsx("span",{className:"ob-badge",children:n.badge}),e.jsx("h1",{className:"hero-title ob-hero-title",children:n.heroTitle}),e.jsx("p",{className:"ob-hero-promise",children:n.heroSub}),e.jsx("p",{className:"hero-note",style:{maxWidth:620,margin:"0 auto 24px",lineHeight:1.7},children:n.heroNote}),e.jsxs("div",{style:{display:"flex",flexDirection:"column",alignItems:"center",gap:12},children:[e.jsx("button",{className:"btn",style:{width:"100%",maxWidth:380,justifyContent:"center"},onClick:s,children:n.ctaPrimary}),e.jsx("button",{className:"btn outline",style:{width:"100%",maxWidth:380,justifyContent:"center"},onClick:s,children:n.ctaSecondary})]})]})}),e.jsx("div",{className:"section",id:"signals",style:{background:"var(--bg)"},children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.sigEyebrow}),e.jsx("h2",{className:"h2",style:{marginBottom:14},children:n.sigTitle}),e.jsx("p",{className:"ob-lead",style:{marginBottom:6},children:n.sigLead}),e.jsx("p",{className:"ob-sig-note",children:n.sigNote}),e.jsx("div",{className:"ob-sig-grid",children:n.signals.map(a=>e.jsxs("div",{className:"ob-sig",children:[e.jsxs("div",{className:"ob-sig-top",children:[e.jsx("span",{className:"ob-sig-icon",children:a.icon}),e.jsx("span",{className:"ob-sig-tag",children:a.tag})]}),e.jsx("p",{className:"ob-sig-txt",children:a.txt}),e.jsx("div",{className:"ob-sig-meta",children:a.meta})]},a.tag))}),e.jsx("p",{className:"ob-memo-foot",children:n.sigFoot})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",id:"stan",children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.whatEyebrow}),e.jsxs("div",{className:"stan-grid",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"stan-h",children:n.whatTitle}),e.jsxs("div",{className:"stan-body",children:[e.jsx("p",{children:n.whatP1}),e.jsx("p",{children:n.whatP2}),e.jsx("p",{children:n.whatP3}),e.jsx("p",{children:n.whatP4})]})]}),e.jsx("div",{children:e.jsxs("div",{className:"stan-stats",children:[e.jsxs("div",{className:"ss",children:[e.jsx("span",{className:"ss-n",children:n.stat1n}),e.jsx("span",{className:"ss-l",children:n.stat1})]}),e.jsxs("div",{className:"ss",children:[e.jsx("span",{className:"ss-n",children:n.stat2n}),e.jsx("span",{className:"ss-l",children:n.stat2})]}),e.jsxs("div",{className:"ss",children:[e.jsx("span",{className:"ss-n",children:n.stat3n}),e.jsx("span",{className:"ss-l",children:n.stat3})]}),e.jsxs("div",{className:"ss",children:[e.jsx("span",{className:"ss-n",children:n.stat4n}),e.jsx("span",{className:"ss-l",children:n.stat4})]})]})})]})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",id:"why",children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.whyEyebrow}),e.jsx("h2",{className:"h2",children:n.whyTitle}),e.jsx("p",{style:{fontSize:16,color:"var(--sub)",lineHeight:1.75,maxWidth:640,marginBottom:32},children:n.whyIntro}),e.jsxs("table",{className:"ct",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{}),e.jsx("th",{className:"th-m",children:n.thHuman}),e.jsx("th",{className:"th-s",children:n.thStan})]})}),e.jsx("tbody",{children:n.whyRows.map(a=>e.jsxs("tr",{children:[e.jsx("td",{children:a.k}),e.jsx("td",{className:"td-m",children:a.a}),e.jsx("td",{className:"td-s",children:a.b})]},a.k))})]})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",id:"how",style:{background:"var(--bg)"},children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.howEyebrow}),e.jsx("h2",{className:"h2",style:{marginBottom:12},children:n.howTitle}),e.jsx("p",{className:"ob-lead",style:{marginBottom:28},children:n.howLead}),e.jsx("div",{className:"ob-steps",children:n.steps.map(a=>e.jsxs("div",{className:"mod",children:[e.jsx("div",{className:"mod-num",children:a.num}),e.jsx("div",{className:"mod-title",children:a.title}),e.jsx("div",{className:"mod-desc",children:a.desc}),e.jsxs("div",{className:"mod-out",children:[e.jsx("span",{className:"mod-out-title",children:a.outTitle}),e.jsx("div",{className:"mod-out-row",children:a.out})]})]},a.title))}),e.jsx("div",{className:"ob-verdicts-head",children:n.verdictsTitle}),e.jsx("div",{className:"verdicts ob-verdicts4",children:n.verdicts.map(a=>e.jsxs("div",{className:`vd ${a.cls}`,children:[e.jsx("div",{className:"vd-label",style:{color:a.color},children:a.label}),e.jsx("p",{children:a.p})]},a.label))}),e.jsx("p",{className:"ob-memo-foot",children:n.verdictsFoot})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",id:"memo",children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.memoEyebrow}),e.jsx("h2",{className:"h2",style:{marginBottom:24},children:n.memoTitle}),e.jsx("div",{className:"ob-anat-grid",children:n.anat.map(a=>e.jsxs("div",{className:"ob-anat",children:[e.jsx("span",{className:"ob-anat-k",children:a.k}),e.jsx("p",{className:"ob-anat-p",children:a.p})]},a.k))}),e.jsx("p",{className:"ob-memo-foot",children:n.memoFoot}),e.jsx("div",{className:"ob-call",children:n.memoLock})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.ritualEyebrow}),e.jsxs("div",{className:"daily-grid",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"h2",children:n.ritualTitle}),e.jsx("p",{style:{fontSize:15,color:"var(--sub)",lineHeight:1.8,marginBottom:14},children:n.ritualP1}),e.jsx("p",{style:{fontSize:15,color:"var(--sub)",lineHeight:1.8,marginBottom:22},children:n.ritualP2}),e.jsxs("div",{className:"verdicts",children:[e.jsxs("div",{className:"vd call",children:[e.jsx("div",{className:"vd-label",children:n.yesLabel}),e.jsx("p",{children:n.yesBody})]}),e.jsxs("div",{className:"vd pass",children:[e.jsx("div",{className:"vd-label",children:n.noLabel}),e.jsx("p",{children:n.noBody})]})]})]}),e.jsxs("div",{children:[e.jsxs("div",{className:"tl",children:[e.jsxs("div",{className:"tl-row",children:[e.jsx("span",{className:"tl-time",children:n.tl1t}),e.jsxs("div",{children:[e.jsx("div",{className:"tl-h",children:n.tl1h}),e.jsx("p",{className:"tl-p",children:n.tl1p})]})]}),e.jsxs("div",{className:"tl-row",children:[e.jsx("span",{className:"tl-time",children:n.tl2t}),e.jsxs("div",{children:[e.jsx("div",{className:"tl-h",children:n.tl2h}),e.jsx("p",{className:"tl-p",children:n.tl2p})]})]}),e.jsxs("div",{className:"tl-row",children:[e.jsx("span",{className:"tl-time",children:n.tl3t}),e.jsxs("div",{children:[e.jsx("div",{className:"tl-h",children:n.tl3h}),e.jsx("p",{className:"tl-p",children:n.tl3p})]})]})]}),e.jsx("div",{style:{marginTop:16},children:e.jsx("img",{src:L5,alt:n.imgAlt,style:{maxWidth:"100%",display:"block",border:"1px solid var(--line)"}})})]})]})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",style:{background:"var(--bg)"},children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.flyEyebrow}),e.jsxs("div",{className:"fw-grid",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"h2",children:n.flyH2}),e.jsx("p",{className:"fw-body",children:n.flyBody1}),e.jsx("p",{className:"fw-body",children:n.flyBody2}),e.jsxs("div",{className:"fw-cmp",children:[e.jsxs("div",{className:"fw-col",children:[e.jsx("span",{className:"fw-col-h r",children:n.flyManualHead}),n.flyManual.map(a=>e.jsx("div",{className:"fw-li",children:a},a))]}),e.jsxs("div",{className:"fw-col good",children:[e.jsx("span",{className:"fw-col-h g",children:n.flyStanHead}),n.flyStan.map(a=>e.jsx("div",{className:"fw-li",children:a},a))]})]})]}),e.jsx("div",{className:"fw-stats",children:n.flyStats.map((a,o)=>e.jsxs("div",{className:`fw-s${o===2?" hl":""}`,children:[e.jsx("span",{className:"fw-big",children:a.n}),e.jsx("div",{className:"fw-det",children:a.d})]},o))})]})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",id:"proof",children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.proofEyebrow}),e.jsx("h2",{className:"h2",style:{marginBottom:10},children:n.proofTitle}),e.jsx("p",{className:"ob-lead",style:{marginBottom:18},children:n.proofIntro}),e.jsx("p",{className:"ob-proof-caption",children:n.proofCaption}),e.jsx("div",{style:{width:"100%",overflowX:"auto"},children:e.jsxs("svg",{viewBox:"0 0 820 280",width:"100%",preserveAspectRatio:"xMidYMid meet",style:{display:"block",maxWidth:820,margin:0},role:"img","aria-label":n.chartAria,children:[e.jsxs("g",{stroke:"#E3E8F0",strokeWidth:"1",children:[e.jsx("line",{x1:"70",y1:"30",x2:"780",y2:"30"}),e.jsx("line",{x1:"70",y1:"80",x2:"780",y2:"80"}),e.jsx("line",{x1:"70",y1:"130",x2:"780",y2:"130"}),e.jsx("line",{x1:"70",y1:"180",x2:"780",y2:"180"}),e.jsx("line",{x1:"70",y1:"230",x2:"780",y2:"230"})]}),e.jsxs("g",{fontSize:"11",fill:"#4B5E78",fontFamily:"Inter, sans-serif",children:[e.jsx("text",{x:"58",y:"34",textAnchor:"end",children:"100%"}),e.jsx("text",{x:"58",y:"84",textAnchor:"end",children:"75%"}),e.jsx("text",{x:"58",y:"134",textAnchor:"end",children:"50%"}),e.jsx("text",{x:"58",y:"184",textAnchor:"end",children:"25%"}),e.jsx("text",{x:"58",y:"234",textAnchor:"end",children:"0%"})]}),e.jsx("text",{x:"20",y:"130",fontSize:"11",fontWeight:"700",fill:"#1B2F4E",textAnchor:"middle",transform:"rotate(-90 20 130)",fontFamily:"Inter, sans-serif",children:n.chartY}),e.jsx("line",{x1:"70",y1:"230",x2:"780",y2:"230",stroke:"#8FA0B8",strokeWidth:"1.5"}),[0,1,2,3,4,5,6].map(a=>{const o=70+a/6*710;return e.jsxs("g",{children:[e.jsx("line",{x1:o,y1:"230",x2:o,y2:"235",stroke:"#8FA0B8",strokeWidth:"1.5"}),e.jsx("text",{x:o,y:"252",fontSize:"11",fill:"#4B5E78",textAnchor:"middle",fontFamily:"Inter, sans-serif",children:a===0?n.chartGoLive:`M${a}`})]},a)}),e.jsx("text",{x:"425",y:"272",fontSize:"11",fontWeight:"700",fill:"#1B2F4E",textAnchor:"middle",fontFamily:"Inter, sans-serif",children:n.chartX}),e.jsx("path",{d:"M 70 210 C 160 198, 220 128, 425 108 C 585 92, 700 56, 780 44 L 780 56 C 700 70, 585 104, 425 122 C 220 142, 160 210, 70 222 Z",fill:"#12A150",fillOpacity:"0.14",stroke:"none"}),e.jsx("path",{d:"M 70 202 C 160 190, 230 120, 425 100 C 585 84, 700 60, 780 50",fill:"none",stroke:"#12A150",strokeWidth:"3",strokeLinecap:"round",strokeDasharray:"2 7"}),e.jsxs("g",{children:[e.jsx("rect",{x:"130",y:"138",width:"120",height:"32",rx:"4",fill:"#ffffff",stroke:"#C9D6E6"}),e.jsx("text",{x:"190",y:"152",fontSize:"11",fontWeight:"800",fill:"#1B2F4E",textAnchor:"middle",fontFamily:"Inter, sans-serif",children:n.wp1t}),e.jsx("text",{x:"190",y:"165",fontSize:"11",fontWeight:"600",fill:"#0E7F3F",textAnchor:"middle",fontFamily:"Inter, sans-serif",children:n.wp1v}),e.jsx("circle",{cx:"188",cy:"180",r:"6",fill:"#fff",stroke:"#12A150",strokeWidth:"2.5"}),e.jsx("circle",{cx:"188",cy:"180",r:"2.5",fill:"#12A150"})]}),e.jsxs("g",{children:[e.jsx("rect",{x:"368",y:"52",width:"120",height:"32",rx:"4",fill:"#ffffff",stroke:"#C9D6E6"}),e.jsx("text",{x:"428",y:"66",fontSize:"11",fontWeight:"800",fill:"#1B2F4E",textAnchor:"middle",fontFamily:"Inter, sans-serif",children:n.wp2t}),e.jsx("text",{x:"428",y:"79",fontSize:"11",fontWeight:"600",fill:"#0E7F3F",textAnchor:"middle",fontFamily:"Inter, sans-serif",children:n.wp2v}),e.jsx("circle",{cx:"425",cy:"100",r:"7",fill:"#fff",stroke:"#12A150",strokeWidth:"2.5"}),e.jsx("circle",{cx:"425",cy:"100",r:"2.5",fill:"#12A150"})]}),e.jsxs("g",{children:[e.jsx("rect",{x:"660",y:"14",width:"120",height:"32",rx:"4",fill:"#E7F6EE",stroke:"#12A150"}),e.jsx("text",{x:"720",y:"28",fontSize:"11",fontWeight:"800",fill:"#0E7F3F",textAnchor:"middle",fontFamily:"Inter, sans-serif",children:n.wp3t}),e.jsx("text",{x:"720",y:"41",fontSize:"11",fontWeight:"700",fill:"#0E7F3F",textAnchor:"middle",fontFamily:"Inter, sans-serif",children:n.wp3v}),e.jsx("circle",{cx:"780",cy:"50",r:"7",fill:"#fff",stroke:"#12A150",strokeWidth:"2.5"}),e.jsx("circle",{cx:"780",cy:"50",r:"2.5",fill:"#12A150"})]})]})}),e.jsx("div",{className:"ob-conv-row",children:n.proofSteps.map((a,o)=>e.jsxs("div",{className:`ob-conv-step${o===2?" hl":""}`,children:[e.jsx("div",{className:"ob-conv-pct",children:a.pct}),e.jsx("div",{className:"ob-conv-period",children:a.period}),e.jsx("div",{className:"ob-conv-desc",children:a.desc})]}
3107,a.period))}),e.jsx("div",{className:"ob-call",style:{marginTop:22},children:n.proofFoot})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",id:"architecture",children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.archEyebrow}),e.jsx("h2",{className:"h2",style:{marginBottom:12},children:n.archTitle}),e.jsx("p",{style:{fontSize:16,color:"var(--sub)",lineHeight:1.75,maxWidth:640,marginBottom:0},children:n.archDesc}),e.jsx("div",{style:{marginTop:28},children:e.jsx("img",{src:b5,alt:"Architecture : autonome ou connecté",style:{maxWidth:"100%",height:"auto",display:"block"}})})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.whoEyebrow}),e.jsx("h2",{className:"h2",style:{marginBottom:14},children:n.whoTitle}),e.jsx("div",{className:"ob-call",style:{marginBottom:28},children:n.whoIntro}),e.jsx("div",{className:"serve-grid",children:n.who.map(a=>e.jsxs("div",{className:"sc",children:[e.jsx("div",{className:"sc-h",children:a.h}),e.jsx("p",{className:"sc-p",children:a.p})]},a.h))})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",id:"founder",style:{background:"var(--bg)"},children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.founderEyebrow}),e.jsxs("div",{className:"founder-grid",style:{marginTop:28},children:[e.jsx("div",{children:e.jsx("img",{src:v5,alt:n.founderName,className:"founder-photo ob-founder-photo"})}),e.jsxs("div",{children:[e.jsx("div",{className:"founder-name",children:n.founderName}),e.jsx("div",{className:"founder-role",children:n.founderRole}),e.jsx("div",{className:"f-rows",children:n.founderRows.map(a=>e.jsxs("div",{className:"f-row",children:[e.jsx("span",{className:"f-co",children:a.co}),e.jsx("span",{className:"f-desc",children:a.desc})]},a.co))}),e.jsx("div",{className:"founder-quote",children:n.founderQuote})]})]})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",id:"security",children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.secEyebrow}),e.jsx("h2",{className:"h2",style:{marginBottom:12},children:n.secTitle}),e.jsx("p",{style:{fontSize:14,color:"var(--sub)",lineHeight:1.75,maxWidth:640,marginBottom:28},children:n.secIntro}),e.jsxs("div",{className:"ob-sec-badges",children:[e.jsx("span",{className:"ob-sec-inherited",children:n.secInherited}),["SOC 2 Type II","ISO 27001"].map(a=>e.jsx("span",{className:"ob-sec-badge",children:a},a))]}),e.jsx("div",{className:"impact-grid impact-grid-3",children:n.sec.map(a=>e.jsxs("div",{className:"imp",children:[e.jsx("span",{className:"imp-h",children:a.h}),e.jsx("p",{className:"imp-p",children:a.p})]},a.h))})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",id:"pricing",style:{background:"var(--bg)"},children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.pricingEyebrow}),e.jsx("h2",{className:"h2",style:{marginBottom:12},children:n.pricingTitle}),e.jsx("p",{className:"pricing-lead",style:{maxWidth:640},children:n.pricingLead}),e.jsx("div",{className:"ob-price-wrap",children:e.jsxs("div",{className:"pc feat",children:[e.jsx("span",{className:"pc-tag",children:n.priceTag}),e.jsx("div",{className:"pc-name",children:n.priceName}),e.jsx("div",{className:"pc-tagline",children:n.priceTagline}),e.jsx("div",{className:"pc-price",children:n.priceAmount}),e.jsx("span",{className:"pc-period",children:n.pricePeriod}),e.jsx("div",{className:"pc-outreach",children:n.priceSetup}),e.jsx("div",{className:"ob-price-calc",children:n.priceCalc}),e.jsx("div",{className:"pgroup",children:n.priceGroup}),e.jsx("div",{className:"pfeats",children:n.priceFeats.map(a=>e.jsx("div",{className:"pfi",children:a},a))}),e.jsx("div",{className:"ob-price-commit",children:n.priceCommit}),e.jsx("div",{className:"pc-note",children:n.priceNote}),e.jsx("div",{className:"pc-cta",children:e.jsx("button",{className:"btn",onClick:s,children:n.priceCta})})]})})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.tlEyebrow}),e.jsx("h2",{className:"h2",style:{marginBottom:24},children:n.tlH2}),e.jsx("div",{className:"tl6",children:n.timeline.map(a=>e.jsxs("div",{className:"tl6-s",children:[e.jsx("span",{className:"tl6-d",children:a.d}),e.jsx("div",{className:"tl6-h",children:a.h}),e.jsx("p",{className:"tl6-p",children:a.p})]},a.d))})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",style:{background:"var(--bg)"},children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.impactEyebrow}),e.jsx("h2",{className:"h2",style:{marginBottom:4},children:n.impactTitle}),e.jsx("p",{className:"ob-impact-note",children:n.impactNote}),e.jsx("div",{className:"impact-grid",children:n.impact.map(a=>e.jsxs("div",{className:"imp",children:[e.jsx("span",{className:"imp-n",children:a.n}),e.jsx("span",{className:"imp-h",children:a.h}),e.jsx("p",{className:"imp-p",children:a.p})]},a.h))})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",id:"faq",children:e.jsxs("div",{className:"wrap-wide",children:[e.jsx("span",{className:"eyebrow",children:n.faqEyebrow}),e.jsx("h2",{className:"h2",style:{marginBottom:28},children:n.faqTitle}),e.jsx("div",{className:"ob-faq",children:n.faq.map(a=>e.jsxs("div",{className:"ob-faq-item",children:[e.jsx("div",{className:"ob-faq-q",children:a.q}),e.jsx("p",{className:"ob-faq-a",children:a.a})]},a.q))})]})}),e.jsx("hr",{className:"div"}),e.jsx("div",{className:"section",style:{textAlign:"center"},children:e.jsxs("div",{className:"wrap",children:[e.jsx("span",{className:"eyebrow",style:{textAlign:"center"},children:n.ctaEyebrow}),e.jsx("h2",{className:"cta-h",children:n.ctaH}),e.jsx("p",{className:"cta-p",children:n.ctaP}),e.jsx("button",{className:"btn",onClick:s,children:n.ctaBtn}),e.jsxs("p",{className:"cta-note",children:[n.ctaNote,e.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"})," · +33 (0)6 83 10 72 86"]})]})}),e.jsx("hr",{className:"div"}),e.jsx(x5,{}),e.jsx(Nt,{}),r&&e.jsx(Pi,{onClose:()=>i(!1)})]})}const w5=` 3108.ob-badge { 3109 display: inline-block; 3110 font-size:12px; font-weight:600; 3111 color: var(--green-dk); background: var(--gp); 3112 border: 1px solid #cfe8da; border-radius: 22px; 3113 padding: 5px 14px; margin-bottom: 14px; 3114} 3115.ob-hero-title { max-width: 820px; margin-left: auto; margin-right: auto; } 3116.ob-hero-promise { font-size: clamp(17px, 2.4vw, 21px); font-weight: 700; color: var(--ink); line-height: 1.4; max-width: 640px; margin: 14px auto 16px; letter-spacing: -.01em; } 3117.ob-lead { font-size: 16px; color: var(--sub); line-height: 1.75; max-width: 720px; margin: 0; } 3118.ob-memo-foot { font-size: 14px; color: var(--mid); line-height: 1.7; margin-top: 20px; max-width: 760px; } 3119.ob-memo-foot strong { font-weight: 600; color: var(--ink); } 3120 3121/* consistent heading width across sections */ 3122.section .h2 { max-width: 860px; } 3123 3124/* emphasis callout (memo lock, proof ammunition, ICP gate) */ 3125.ob-call { margin-top: 18px; padding: 16px 20px; border-left: 3px solid var(--green); background: var(--gp); font-size: 14.5px; color: var(--sub); line-height: 1.7; max-width: 820px; } 3126.ob-call strong { font-weight: 700; color: var(--ink); } 3127 3128/* live signals */ 3129.ob-sig-note { font-size: 12px; color: var(--lite); font-style: italic; margin: 0 0 24px; } 3130.ob-sig-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); } 3131.ob-sig { background: var(--white); padding: 18px 18px 16px; } 3132.ob-sig-top { display: flex; align-items: center; gap: 8px; margin-bottom: 9px; } 3133.ob-sig-icon { font-size: 18px; line-height: 1; } 3134.ob-sig-tag { font-size:12px; font-weight:600; color: var(--green-dk); background: var(--gp); padding: 3px 8px; border-radius: 3px; } 3135.ob-sig-txt { font-size: 13.5px; color: var(--sub); line-height: 1.6; margin: 0 0 10px; } 3136.ob-sig-meta { font-size: 11px; color: var(--lite); border-top: 1px solid var(--line); padding-top: 8px; line-height: 1.45; } 3137 3138/* steps */ 3139.ob-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; } 3140 3141/* verdicts 4-up */ 3142.ob-verdicts-head { font-size:12px; font-weight:600; color: var(--lite); margin: 38px 0 12px; } 3143.ob-verdicts4 { grid-template-columns: 1fr 1fr 1fr 1fr; margin-top: 0; } 3144 3145/* memo anatomy */ 3146.ob-anat-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--line); border: 1px solid var(--line); } 3147.ob-anat { background: var(--white); padding: 18px 20px; } 3148.ob-anat-k { font-size:12px; font-weight:600; color: var(--green); display: block; margin-bottom: 6px; } 3149.ob-anat-p { font-size: 13.5px; color: var(--sub); line-height: 1.65; margin: 0; } 3150 3151/* proof */ 3152.ob-proof-caption { font-size: 12px; color: var(--lite); font-style: italic; margin: 0 0 18px; } 3153.ob-conv-row { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 12px; margin-top: 22px; } 3154.ob-conv-step { background: var(--bg); border: 1px solid var(--line); border-left: 3px solid var(--green); padding: 14px 16px; } 3155.ob-conv-step.hl { background: #E7F6EE; border-color: #12A150; border-left-color: #12A150; } 3156.ob-conv-pct { font-size: 22px; font-weight: 900; color: var(--green); letter-spacing: -.02em; line-height: 1.1; } 3157.ob-conv-step.hl .ob-conv-pct { color: #0E7F3F; } 3158.ob-conv-period { font-size:12px; font-weight:600; color: var(--mid); margin: 4px 0 8px; } 3159.ob-conv-desc { font-size: 12.5px; color: var(--sub); line-height: 1.55; } 3160 3161/* founder */ 3162.ob-founder-photo { height: auto; aspect-ratio: 180 / 222; object-fit: cover; object-position: center top; display: block; } 3163 3164/* security badges */ 3165.ob-sec-badges { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0 0 28px; } 3166.ob-sec-inherited { font-size:12px; font-weight: 600; color: var(--lite); margin-right: 6px; } 3167.ob-sec-badge { display: inline-flex; align-items: center; font-size:12px; font-weight: 500; color: var(--sub); border: 1px solid var(--line); border-radius: 999px; padding: 4px 12px; background: var(--white); } 3168 3169/* pricing single */ 3170.ob-price-wrap { max-width: 480px; margin: 6px auto 0; } 3171.ob-price-wrap .pc.feat { border-top-width: 3px; } 3172.ob-price-calc { background: var(--gp); border: 1px solid #cfe8da; border-radius: 4px; padding: 13px 15px; margin: 0 0 16px; font-size: 13px; color: var(--sub); line-height: 1.6; } 3173.ob-price-calc strong { color: var(--green-dk); font-weight: 700; } 3174.ob-price-commit { font-size: 12px; color: var(--mid); line-height: 1.6; border-top: 1px solid var(--line); padding-top: 12px; margin-bottom: 4px; } 3175.ob-price-commit strong { color: var(--ink); font-weight: 600; } 3176 3177/* impact */ 3178.ob-impact-note { font-size: 12px; color: var(--lite); font-style: italic; margin: 0 0 22px; } 3179 3180/* faq */ 3181.ob-faq { display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--line); border: 1px solid var(--line); } 3182.ob-faq-item { background: var(--white); padding: 20px 22px; } 3183.ob-faq-q { font-size: 14.5px; font-weight: 700; color: var(--ink); margin-bottom: 7px; } 3184.ob-faq-a { font-size: 13.5px; color: var(--sub); line-height: 1.7; margin: 0; } 3185 3186.cta-note a { color: var(--green); text-decoration: none; } 3187.cta-note a:hover { text-decoration: underline; } 3188 3189@media (max-width: 960px) { 3190 .ob-verdicts4 { grid-template-columns: 1fr 1fr; } 3191 .ob-sig-grid { grid-template-columns: 1fr 1fr; } 3192} 3193@media (max-width: 768px) { 3194 .ob-sig-grid { grid-template-columns: 1fr; } 3195 .ob-steps { grid-template-columns: 1fr; } 3196 .ob-verdicts4 { grid-template-columns: 1fr 1fr; } 3197 .ob-anat-grid { grid-template-columns: 1fr; } 3198 .ob-conv-row { grid-template-columns: 1fr; } 3199 .ob-faq { grid-template-columns: 1fr; } 3200} 3201`,ni=[{id:"01",label:"Strategy",cadence:"Day 7",title:"Stan learns how you think. Then executes it at scale.",tagline:"1 hour. Your acquisition DNA â encoded, deployed, evolving.",yourTime:"1 hour, once",deliverable:"Fund Thesis JSON v5.3 â stored in Airtable, edited by the CEO on analysis.proplace.co/thesis/?fund=<slug> (Pydantic-validated before every PATCH)."},{id:"02",label:"Sourcing",cadence:"Daily",title:"Stan scans. Stan filters. Only what matters reaches you.",tagline:"6â18 months before the market. Every day. Zero effort from you.",yourTime:"0 â fully automated",deliverable:"Sourcing Dashboard â matches filterable by angle, sector, geography, signal type."},{id:"03",label:"Qualification",cadence:"Daily",title:"From signal to strategic asset.",tagline:"Stan qualifies everything autonomously. You answer YES or NO on the best â once a week if needed. Each decision makes the system more precise. YES rate and MATCH rate measure the convergence â every Monday.",yourTime:"~2 min / top pick · ~15 min / week",deliverable:"Daily 4 PM brief + memo HTML on analysis.proplace.co/<slug> + Deal Flow Dashboard."},{id:"04",label:"Deal Intelligence",cadence:"On demand",title:"Deal Intelligence Dashboard",tagline:"All your deals. Any output. For any stakeholder.",yourTime:"On demand â natural language",deliverable:"proplace.co/chat/?fund=<slug> â 6 packaged actions + free-text queries, shareable outputs."},{id:"05",label:"Weekly Evolution",cadence:"Every Monday",title:"Stan gets smarter. Without you doing anything.",tagline:"52à thesis updates/year. 6 months until your deal flow is structurally irreplicable.",yourTime:"0 â reads your decisions automatically",deliverable:"Monday email â decisions summary, thesis mutations, intelligence report, portfolio health."}],k5=[{code:"vc-seed",name:"VC Pre-Seed / Seed",desc:"ARR trajectory, team-thesis fit, pre-revenue OK."},{code:"vc-growth",name:"VC Venture / Growth",desc:"ARR measurable, NRR >130%, burn <1.5Ã."},{code:"ma-strategic",name:"M&A Strategic",desc:"Dynamic synergies (revenue, cost, structural, defensive â 8+ types) extracted from the qualitative memo. Y1-Y5 cascade discounted at WACC."},{code:"ma-lbo",name:"M&A LBO",desc:"Leverage effect. IRR 20â30%, MOIC 2.5â4Ã."}],A5=[{emoji:"ð",name:"SSL / CRT",detail:"Certificate Transparency logs â catches domains before any public presence."}
3201,{emoji:"âï¸",name:"Pappers FR",detail:"French legal registry â new SARL/SAS filings, NAF codes, founder identity."},{emoji:"ð»",name:"GitHub",detail:"New repos + contributor graphs â tech traction months before Series A."},{emoji:"ð ",name:"Hacker News",detail:"Show HN, Ask HN, Who-is-hiring â signals weighted by upvotes + thesis keywords."},{emoji:"ð¼",name:"LinkedIn Posts",detail:"Founder and exec posts matching thesis semantic patterns."},{emoji:"ð¯",name:"LinkedIn Jobs",detail:"Hiring signals â weekly calendar of role + city pairs aligned with each angle."},{emoji:"ð°",name:"Fundraising",detail:"Announced rounds across trackers â filtered by stage, geography, sector."},{emoji:"ð°",name:"RSS",detail:"Sector-specific feeds â thesis-calibrated keyword gate."},{emoji:"ð",name:"Google Alerts",detail:"Programmatic Google News RSS from boolean queries â runs every query daily, 24h window."},{emoji:"ð",name:"Google News",detail:"Real-time news monitoring on thesis keywords and competitors."},{emoji:"ð¦",name:"VC Portfolios",detail:"Known VC portfolio companies â backfill and lookalike seeds, all 68 sources scanned daily."},{emoji:"ð¢",name:"Crunchbase Search",detail:"Daily city + industry + employee-band signature aligned with each angle."},{emoji:"ð§ ",name:"Exa Semantic",detail:"Neural search â predicts companies semantically matching your thesis."},{emoji:"ð",name:"Exa Lookalike",detail:"Seeded by your competitor anchors â finds structurally similar targets."},{emoji:"â
",name:"Exa Websets",detail:"Verification-first sourcing â Exa verifies each candidate against your thesis criteria server-side. MATCH rate 60â80% vs 5â15% on other engines."},{emoji:"ð",name:"Manual Paste",detail:"On-demand â paste any company URL or name, get an instant MATCH/NO MATCH verdict using the same gate as the daily engines. Cached so duplicates return instantly."},{emoji:"ð",name:"Find Similar to Qualified",detail:"On-demand â pick any CALL/CONSIDER/MONITOR/MATCH company in your portfolio, get 5 fresh similar candidates evaluated through the same gate. Toggle to exclude already-known domains."}],S5=[{label:"Angle",detail:"Which thesis angle is triggered and how strongly."},{label:"Market",detail:"Size, timing, consolidation dynamics, regulatory tailwinds."},{label:"Timing",detail:"Execution window â before competitors or regulatory pressure closes it."},{label:"Company",detail:"Moat strength, data advantage, integration complexity."},{label:"Founder",detail:"Domain fit, execution track record, enterprise exposure."},{label:"Thesis fit",detail:"Strategic alignment with your active mandate."}],E5=[{icon:"ð",name:"Analysis & Qualification",kind:"required",tasks:[{task:"AI memo generated automatically",required:!0},{task:"Validate or override AI verdict",required:!0},{task:"Market sizing verified with recent sources",required:!1}]},{icon:"âï¸",name:"Founder Outreach",kind:"required",tasks:[{task:"Personalised outreach email sent",required:!0},{task:"30-min meeting scheduled",required:!0}]},{icon:"ð",name:"Discovery & Qualification",kind:"required",tasks:[{task:"Call prep completed",required:!0},{task:"ARR verified (bank statements)",required:!0},{task:"3 founder reference calls",required:!1}]},{icon:"ð",name:"Term Sheet & Exclusivity",kind:"required",tasks:[{task:"LOI generated and reviewed by lawyer",required:!0},{task:"Financial model validated (IRR · MOIC)",required:!0}]},{icon:"ð",name:"Investment Committee",kind:"required",tasks:[{task:"Board brief prepared 48h in advance",required:!0},{task:"5-page IC slides generated",required:!0}]},{icon:"ð¬",name:"Due Diligence",kind:"required",tasks:[{task:"Legal, financial & tech DD mandated",required:!0},{task:"Cap table verified (shareholders + BSPCE)",required:!0}]},{icon:"ð",name:"Portfolio Management",kind:"ongoing",tasks:[{task:"100-day plan shared post-closing",required:!0},{task:"Fair value calculated and documented",required:!1},{task:"Quarterly LP update sent",required:!1}]}],N5=[{icon:"ðº",name:"Parcours",desc:"7-phase roadmap. Check off required and optional tasks per phase. Progress persists to Airtable."},{icon:"ð¬",name:"Chat",desc:"Select any text in the memo to pre-fill a question. Stan can edit the memo via JSON â edits commit back to GitHub."},{icon:"â¡",name:"Skills",desc:"20+ packaged outputs. Click to run â result saved to Outputs tab and to Airtable."},{icon:"ð",name:"Outputs",desc:"All saved skill results, shareable via permanent tokens. Restorable to the memo at any time."},{icon:"ð",name:"History",desc:"Memo snapshots + full edit history. One-click restore to any previous version."}],C5=[{emoji:"ð",title:"Call prep",example:'"Prepare distinct briefs for my meetings with Duna, Payhawkâ¦"'},{emoji:"ð",title:"Board synthesis",example:'"A 1-page comparative board note on Duna, Payhawk, Unleashâ¦"'},{emoji:"âï¸",title:"Outreach email",example:'"Draft distinct outreach emails for the CEOs of Duna, Payhawkâ¦"'},{emoji:"â ï¸",title:"Risk analysis",example:'"Analyse and compare risks on Duna, ElectricTwin, Ivoâ¦"'},{emoji:"âï¸",title:"Deal comparison",example:'"Compare Duna, Payhawk, Unleash, ElectricTwin on EBITDA, teamâ¦"'},{emoji:"ð",title:"Pipeline report",example:`"Generate a pipeline report for my LP on this week's targetsâ¦"`}],_5=[{emoji:"âï¸",title:"Angle weights shift",desc:"Angles with strong CALL signals gain weight. Weak angles lose priority."},{emoji:"ð«",title:"Hard filters tighten",desc:"Repeated PASS patterns become encoded rejection rules."},{emoji:"ð",title:"Sourcing queries update",desc:"Exa queries and sector keywords evolve toward your best MATCHes."},{emoji:"ð¯",title:"Benchmarks evolve",desc:"Your CALL decisions become new lookalike seeds for E
3201xa Similar."}],T5=[{emoji:"â¡",rhythm:"Per deal · On demand",title:"Ad hoc analysis email",desc:"Sent after each one-click analysis: SWOT, GP verdict, key competitors, link to the full memo. YES or NO directly from the email."},{emoji:"ð¬",rhythm:"Daily · 4 PM",title:"Daily deal flow brief",desc:"Stan's daily report â sourced, filtered, tracked. Most days: no input required. When Stan identifies a top pick: YES · NO button directly in the email."},{emoji:"ð
",rhythm:"Monday · 4 PM",title:"Monday · 4 PM · Weekly command center",desc:"Before 4 PM: your Corporate Developer calls you â only if top picks are still open. One question per unanswered deal. YES or NO. By the time this email arrives, the loop is closed. CLOSE â every top pick from the past 7 days: YES â outreach status + thesis impact note · NO â CEO_VETO logged, angle mutation confirmed, thesis updated. OPEN â new top picks from this morning: YES · NO + note field if you have context. THESIS UPDATE: YES rate this week + trend vs last week · MATCH rate this week · Fund Thesis vX.X · N mutations applied · Per-angle performance table · What changed and why. Stan's autonomous work this week â one number, no action required."}],q5=[{key:"redflag",title:"Red Flag Audit",task:"t3",category:"Analysis",summary:"Systematic risk audit per memo block: criticality, explanation, mitigant, global score 1-10."},{key:"market",title:"Market Sizing",task:"t4",category:"Analysis",summary:"Verified TAM/SAM/SOM with sources, year, and reality-check vs deck claims."},{key:"competitive",title:"Analyse Concurrentielle",task:"t5",category:"Analysis",summary:"8â10 real competitors with positioning, funding, strengths/weaknesses, magic quadrant."},{key:"techaudit",title:"Audit Technique",task:null,category:"Analysis",summary:"Stack detection, tech debt, scalability assessment, 10 CTO DD questions."},{key:"email",title:"Email d'approche",task:"t6",category:"Outreach",summary:"Natural-tone CEO outreach: 5 sentences max, no acquisition mention, partnership angle, includes subject."},{key:"callprep",title:"Call Prep",task:"t11",category:"Outreach",summary:"Brief: 3 key questions, 2 traps to avoid, precise call goal, no-go negotiation points."},{key:"loi",title:"Draft LOI",task:"t17",category:"Term Sheet",summary:"Non-binding Letter of Intent: parties, valuation, structure (% + earn-out), CPs, exclusivity, NDA."},{key:"exec",title:"Executive Summary",task:"t22",category:"IC",summary:"1-page IC summary: hook quote, 4 KPIs grid (ARR/EV/Multiple/IRR), thesis bullets, risks, recommendation."},{key:"slides",title:"Slides Comité IC",task:null,category:"IC",summary:"5-slide deal brief: Cover · Market · Thesis fit · Financials · Recommendation."},{key:"techdd",title:"Questions DD Technique",task:null,category:"DD",summary:"10 CTO questions across 4 categories: Architecture, Tech Debt, Security, Team & Process."},{key:"refcheck",title:"Questions de Référence",task:null,category:"DD",summary:"10 founder reference questions across 5 categories: Execution, Leadership, Blind spots, Projections, Key questions."},{key:"custref",title:"Customer Reference Calls",task:null,category:"DD",summary:"5 customer reference questions: daily usage, differentiation, dependency, missing features, NPS."},{key:"lp",title:"Version LP Board-Ready",task:null,category:"Reporting",summary:"Board/LP version of memo in English, sensitive valuation data filtered, formal tone, PDF-ready."},{key:"fairvalue",title:"Fair Value",task:null,category:"Portfolio",summary:"Thesis-multiple based fair value: EV estimate, ARR multiple, safety margin, recommendation (revalue/hold/depreciate)."},{key:"kpi",title:"Dashboard KPIs",task:null,category:"Portfolio",summary:"Portfolio Management KPI grid: ARR, NRR, Runway, Churn, Growth â using memo data."},{key:"board",title:"Notes Board Meeting",task:null,category:"Portfolio",summary:"Structured board notes: Decisions · A
3201ctions · Next steps · Key metrics · Attention points."},{key:"100days",title:"Plan 100 Jours",task:"t35",category:"Portfolio",summary:"Post-closing 100-day plan in 3 phases: D+0-30 integration, D+30-60 governance, D+60-100 synergies."},{key:"lp-update",title:"Update LP Trimestriel",task:null,category:"Portfolio",summary:"Quarterly LP update in English: KPIs (ARR/NRR/Runway), highlights, outlook, formal tone."}],F5={skills:q5},tm=F5.skills,O5={"01":{label:"Stratégie",cadence:"Jour 7",title:"Stan apprend votre façon de penser. Puis lâexécute à grande échelle.",tagline:"1 heure. Votre ADN dâacquisition â encodé, déployé, en évolution.",yourTime:"1 heure, une seule fois",deliverable:"JSON Fund Thesis v5.3 â stocké dans Airtable, édité par le CEO sur analysis.proplace.co/thesis/?fund=<slug> (validé par Pydantic avant chaque PATCH)."},"02":{label:"Sourcing",cadence:"Quotidien",title:"Stan scanne. Stan filtre. Seul lâessentiel vous parvient.",tagline:"6 à 18 mois avant le marché. Chaque jour. Zéro effort de votre part.",yourTime:"0 â entièrement automatisé",deliverable:"Dashboard de sourcing â matchs filtrables par angle, secteur, géographie, type de signal."},"03":{label:"Qualification",cadence:"Quotidien",title:"Du signal à lâactif stratégique.",tagline:"Stan qualifie tout de façon autonome. Vous répondez OUI ou NON sur les meilleurs â une fois par semaine si besoin. Chaque décision rend le système plus précis. Le taux de OUI et le taux de MATCH mesurent la convergence â chaque lundi.",yourTime:"~2 min / top pick · ~15 min / semaine",deliverable:"Brief quotidien 16h + mémo HTML sur analysis.proplace.co/<slug> + Deal Flow Dashboard."},"04":{label:"Deal Intelligence",cadence:"à la demande",title:"Deal Intelligence Dashboard",tagline:"Tous vos deals. Nâimporte quel livrable. Pour nâimporte quel interlocuteur.",yourTime:"à la demande â langage naturel",deliverable:"proplace.co/chat/?fund=<slug> â 6 actions packagées + requêtes en texte libre, livrables partageables."},"05":{label:"Ãvolution hebdo",cadence:"Chaque lundi",title:"Stan devient plus pertinent. Sans rien faire de votre part.",tagline:"52à mises à jour de thèse / an. 6 mois avant que votre deal flow soit structurellement inimitable.",yourTime:"0 â lit vos décisions automatiquement",deliverable:"Email du lundi â résumé des décisions, mutations de thèse, rapport dâintelligence, santé du portefeuille."}},u1=t=>O5[t.id]??t,M5={"vc-seed":{name:"VC Pre-Seed / Seed",desc:"Trajectoire dâARR, adéquation équipe-thèse, pré-revenu accepté."},"vc-growth":{name:"VC Venture / Growth",desc:"ARR mesurable, NRR > 130 %, burn < 1,5Ã."},"ma-strategic":{name:"M&A Stratégique",desc:"Synergies dynamiques (revenu, coût, structurelles, défensives â 8+ types) extraites du mémo qualitatif. Cascade A1-A5 actualisée au WACC."},"ma-lbo":{name:"M&A LBO",desc:"Effet de levier. TRI 20â30 %, MOIC 2,5â4Ã."}},R5=t=>M5[t.code]??t,P5={"SSL / CRT":"Logs de Certificate Transparency â repère les domaines avant toute présence publique.","Pappers FR":"Registre légal français â nouveaux dépôts SARL/SAS, codes NAF, identité des fondateurs.",GitHub:"Nouveaux dépôts + graphes de contributeurs â traction tech des mois avant une Série A.","Hacker News":"Show HN, Ask HN, Who-is-hiring â signaux pondérés par upvotes + mots-clés de thè
3201se.","LinkedIn Posts":"Posts de fondateurs et de dirigeants correspondant aux patterns sémantiques de la thèse.","LinkedIn Jobs":"Signaux de recrutement â calendrier hebdo de paires poste + ville alignées sur chaque angle.",Fundraising:"Levées annoncées sur les trackers â filtrées par stade, géographie, secteur.",RSS:"Flux sectoriels â gate de mots-clés calibré sur la thèse.","Google Alerts":"RSS Google News programmatique à partir de requêtes booléennes â chaque requête tourne chaque jour, fenêtre 24h.","Google News":"Veille presse en temps réel sur les mots-clés de thèse et les concurrents.","VC Portfolios":"Sociétés en portefeuille de VC connus â backfill et graines de lookalike, les 68 sources scannées chaque jour.","Crunchbase Search":"Signature quotidienne ville + industrie + tranche dâeffectif alignée sur chaque angle.","Exa Semantic":"Recherche neuronale â prédit les sociétés correspondant sémantiquement à votre thèse.","Exa Lookalike":"Amorcé par vos anchors concurrents â trouve des cibles structurellement similaires.","Exa Websets":"Sourcing vérification-first â Exa vérifie chaque candidat contre vos critères de thèse côté serveur. Taux de MATCH 60â80 % vs 5â15 % sur les autres moteurs.","Manual Paste":"à la demande â collez une URL ou un nom de société, obtenez un verdict MATCH/NO MATCH instantané via le même gate que les moteurs quotidiens. Mis en cache pour que les doublons reviennent instantanément.","Find Similar to Qualified":"à la demande â choisissez une société CALL/CONSIDER/MONITOR/MATCH de votre portefeuille, obtenez 5 candidats similaires frais évalués par le même gate. Bascule pour exclure les domaines déjà connus."},I5={Fundraising:"Levées de fonds","VC Portfolios":"Portefeuilles VC","Find Similar to Qualified":"Similaires aux qualifiés"},D5=t=>({name:I5[t.name]??t.name,detail:P5[t.name]??t.detail}),z5={Angle:{label:"Angle",detail:"Quel angle de thèse est déclenché et avec quelle force."},Market:{label:"Marché",detail:"Taille, timing, dynamiques de consolidation, vents porteurs réglementaires."},Timing:{label:"Timing",detail:"Fenêtre dâexécution â avant que les concurrents ou la pression réglementaire ne la referment."},Company:{label:"Société",detail:"Force du moat, avantage de données, complexité dâintégration."},Founder:{label:"Fondateur",detail:"Adéquation au domaine, track record dâexécution, exposition entreprise."},"Thesis fit":{label:"Adéquation à la thèse",detail:"Alignement stratégique avec votre mandat actif."}},B5=t=>z5[t.label]??t,U5={Parcours:{name:"Parcours",desc:"Feuille de route en 7 phases. Cochez les tâches obligatoires et optionnelles par phase. La progression est persistée dans Airtable."},Chat:{name:"Chat",desc:"Sélectionnez nâimporte quel texte du mémo pour pré-remplir une question. Stan peut éditer le mémo via JSON â les éditions sont commitées dans GitHub."},Skills:{name:"Skills",desc:"20+ livrables packagés. Cliquez pour lancer â le résultat est sauvegardé dans lâonglet Livrables et dans Airtable."},Outputs:{name:"Livrables",desc:"Tous les résultats de skills sauvegardés, partageables via tokens permanents. Restaurables dans le mémo à tout moment."},History:{name:"Historique",desc:"Snapshots du mémo + historique dâédition complet. Restauration en un clic vers nâimporte quelle version précédente."}},V5=t=>U5[t.name]??t,H5={"Analysis & Qualification":{name:"Analyse & Qualification",tasks:["Mémo IA généré automatiquement","Valider ou outrepasser le verdict de lâIA","Taille de marché vérifiée avec des sources récentes"]},"Founder Outreach":{name:"Approche du fondateur",tasks:["Email dâapproche personnalisé envoyé","Réunion de 30 min planifiée"]},"Discovery & Qualification":{name:"Discovery & Qualification",tasks:["Préparation dâappel terminée","ARR vérifié (relevés bancaires)","3 appels de référence fondateur"]},"Term Sheet & Exclusivity":{name:"Term Sheet & Exclusivité",tasks:["LOI générée et revue par un avocat","Modèle financier validé (TRI · MOIC)"]},"Investment Committee":{name:"Comité dâinvestissement",tasks:["Note board préparée 48h à lâavance","Slides IC de 5 pages générées"]}
3201,"Due Diligence":{name:"Due Diligence",tasks:["DD juridique, financière & tech mandatée","Cap table vérifiée (actionnaires + BSPCE)"]},"Portfolio Management":{name:"Gestion de portefeuille",tasks:["Plan 100 jours partagé post-closing","Fair value calculée et documentée","Update LP trimestriel envoyé"]}},Y5=t=>H5[t.name]??{name:t.name,tasks:t.tasks.map(n=>n.task)},G5={"Call prep":{title:"Préparation dâappel",example:"« Prépare des briefs distincts pour mes rendez-vous avec Duna, Payhawk⦠»"},"Board synthesis":{title:"Synthèse board",example:"« Une note board comparative dâ1 page sur Duna, Payhawk, Unleash⦠»"},"Outreach email":{title:"Email dâapproche",example:"« Rédige des emails dâapproche distincts pour les CEO de Duna, Payhawk⦠»"},"Risk analysis":{title:"Analyse de risque",example:"« Analyse et compare les risques sur Duna, ElectricTwin, Ivo⦠»"},"Deal comparison":{title:"Comparaison de deals",example:"« Compare Duna, Payhawk, Unleash, ElectricTwin sur lâEBITDA, lâéquipe⦠»"},"Pipeline report":{title:"Rapport pipeline",example:"« Génère un rapport pipeline pour mon LP sur les cibles de la semaine⦠»"}},W5=t=>G5[t.title]??t,Q5={"Angle weights shift":{title:"Les poids des angles bougent",desc:"Les angles à forts signaux CALL gagnent du poids. Les angles faibles perdent en priorité."},"Hard filters tighten":{title:"Les filtres durs se resserrent",desc:"Les patterns de PASS répétés deviennent des règles de rejet encodées."},"Sourcing queries update":{title:"Les requêtes de sourcing évoluent",desc:"Les requêtes Exa et les mots-clés sectoriels évoluent vers vos meilleurs MATCHs."},"Benchmarks evolve":{title:"Les benchmarks évoluent",desc:"Vos décisions CALL deviennent de nouvelles graines de lookalike pour Exa Similar."}},Z5=t=>Q5[t.title]??t,K5={"Ad hoc analysis email":{rhythm:"Par deal · à la demande",title:"Email dâanalyse ponctuel",desc:"Envoyé après chaque analyse en un clic : SWOT, verdict GP, concurrents clés, lien vers le mémo complet. OUI ou NON directement depuis lâemail."},"Daily deal flow brief":{rhythm:"Quotidien · 16h",title:"Brief de deal flow quotidien",desc:"Le rapport quotidien de Stan â sourcé, filtré, suivi. La plupart des jours : aucune action requise. Quand Stan identifie un top pick : bouton OUI · NON directement dans lâemail."},"Monday · 4 PM · Weekly command center":{rhythm:"Lundi · 16h",title:"Lundi · 16h · Centre de commande hebdo",desc:"Avant 16h : votre Corporate Developer vous appelle â seulement si des top picks sont encore ouverts. Une question par deal sans réponse. OUI ou NON. Quand cet email arrive, la boucle est bouclée. CLÃTURE â chaque top pick des 7 derniers jours : OUI â statut dâapproche + note dâimpact sur la thèse · NON â CEO_VETO consigné, mutation dâangle confirmée, thèse mise à jour. OUVERT â nouveaux top picks de ce matin : OUI · NON + champ de note si vous avez du contexte. MISE à JOUR DE THÃSE : taux de OUI cette semaine + tendance vs la semaine dernière · taux de MATCH cette semaine · Fund Thesis vX.X · N mutations appliquées · tableau de performance par angle · ce qui a changé et pourquoi. Le travail autonome de Stan cette semaine â un chiffre, aucune action requise."}},J5=t=>K5[t.title]??t,$5={redflag:{title:"Audit Red Flags",category:"Analyse",summary:"Audit de risque systématique par bloc du mémo : criticité, explication, mitigant, score global 1-10."},market:{title:"Taille de marché",category:"Analyse",summary:"TAM/SAM/SOM vérifiés avec sources, année, et reality-check vs les claims du deck."},competitive:{title:"Analyse Concurrentielle",category:"Analyse",summary:"8â10 concurrents réels avec positionnement, financement, forces/faiblesses, magic quadrant."},techaudit:{title:"Audit Technique",category:"Analyse",summary:"Détection de stack, dette technique, évaluation de scalabilité, 10 questions DD pour CTO."},email:{title:"Email dâapproche",category:"Approche",summary:"Approche CEO au ton naturel : 5 phrases max, pas de mention dâacquisition, angle partenariat, objet inclus."},callprep:{title:"Préparation dâappel",category:"Approche",summary:"Brief : 3 questions clés, 2 pièges à éviter, objectif dâappel précis, points de négo no-go."},loi:{title:"Rédaction LOI",category:"Term Sheet",summary:"Lettre dâintention non contraignante : parties, valorisation, structure (% + earn-out), CP, exclusivité, NDA."},exec:{title:"Executive Summary",category:"Comité dâinvestissement",summary:"Résumé IC dâ1 page : citation accroche, grille de 4 KPIs (ARR/VE/Multiple/TRI), points de thè
3201se, risques, recommandation."},slides:{title:"Slides Comité IC",category:"Comité dâinvestissement",summary:"Brief deal en 5 slides : Couverture · Marché · Adéquation à la thèse · Financier · Recommandation."},techdd:{title:"Questions DD Technique",category:"Due Diligence",summary:"10 questions CTO sur 4 catégories : Architecture, Dette technique, Sécurité, Ãquipe & Process."},refcheck:{title:"Questions de Référence",category:"Due Diligence",summary:"10 questions de référence fondateur sur 5 catégories : Exécution, Leadership, Angles morts, Projections, Questions clés."},custref:{title:"Appels de Référence Clients",category:"Due Diligence",summary:"5 questions de référence client : usage quotidien, différenciation, dépendance, fonctionnalités manquantes, NPS."},lp:{title:"Version LP Board-Ready",category:"Reporting",summary:"Version board/LP du mémo en anglais, données de valorisation sensibles filtrées, ton formel, prête pour PDF."},fairvalue:{title:"Fair Value",category:"Portefeuille",summary:"Fair value basée sur le multiple de thèse : estimation de VE, multiple dâARR, marge de sécurité, recommandation (revaloriser/garder/déprécier)."},kpi:{title:"Dashboard KPIs",category:"Portefeuille",summary:"Grille de KPIs de gestion de portefeuille : ARR, NRR, Runway, Churn, Croissance â à partir des données du mémo."},board:{title:"Notes Board Meeting",category:"Portefeuille",summary:"Notes board structurées : Décisions · A
3201ctions · Prochaines étapes · Métriques clés · Points dâattention."},"100days":{title:"Plan 100 Jours",category:"Portefeuille",summary:"Plan 100 jours post-closing en 3 phases : J+0-30 intégration, J+30-60 gouvernance, J+60-100 synergies."},"lp-update":{title:"Update LP Trimestriel",category:"Portefeuille",summary:"Update LP trimestriel en anglais : KPIs (ARR/NRR/Runway), faits marquants, perspectives, ton formel."}},X5=t=>$5[t.key]??{title:t.title,category:t.category,summary:t.summary};function h1(t){const n=t==="fr";return[{eyebrow:n?"Référence":"Reference",groups:[{id:"glossary",label:n?"Glossaire â 16 termes clés":"Glossary â 16 key terms",children:[{id:"g-angle",label:"Angle · Entry Filter · GP Synthétique"},{id:"g-matrix",label:n?"Strategic Fit Matrix · Verdicts · OUI/NON":"Strategic Fit Matrix · Verdicts · YES/NO"},{id:"g-ncl",label:n?"NCL · Moteur dâévolution hebdo · Hurdle":"NCL · Weekly Evolution Engine · Hurdle"},{id:"g-flags",label:"Flags · Anchors · Exa · Pappers FR"},{id:"g-override",label:n?"OVERRIDE · Profil sectoriel · Rotations":"OVERRIDE · Sector Profile · Rotations"}]}]},{eyebrow:"Introduction",groups:[{id:"intro",label:n?"Vue dâensemble":"Overview",children:[{id:"intro-overview",label:n?"Ce quâest Proplace":"What Proplace is"},{id:"intro-loop",label:n?"La boucle fermée en cinq étapes":"The five-step closed loop"},{id:"intro-truth",label:n?"Où vit la vérité":"Where the truth lives"}]}]},{eyebrow:n?"01 â Stratégie · Jour 7":"01 â Strategy · Day 7",groups:[{id:"step-01",label:n?"Stan apprend votre façon de penser. Puis lâexécute à grande échelle.":"Stan learns how you think. Then executes it at scale.",children:[{id:"s01-mode",label:n?"1.1 Vous choisissez votre mode â VC / M&A / LBO":"1.1 You choose your mode â VC / M&A / LBO"},{id:"s01-angles",label:n?"1.2 Vous définissez 1 à 6 angles de sourcing":"1.2 You define 1 to 6 sourcing angles"},{id:"s01-json",label:n?"1.3 Le JSON passe en production":"1.3 The JSON goes live"}]}]},{eyebrow:n?"02 â Sourcing · Quotidien":"02 â Sourcing · Daily",groups:[{id:"step-02",label:n?"Stan scanne. Stan filtre. Seul lâessentiel vous parvient.":"Stan scans. Stan filters. Only what matters reaches you.",children:[{id:"s02-engines",label:n?"2.1 Stan lit ce que personne dâautre ne voit â 17 moteurs (15 quotidiens + 2 à la demande)":"2.1 Stan reads what nobody else sees â 17 engines (15 daily + 2 on-demand)"},{id:"s02-filter",label:n?"2.2 Stan filtre sans pitié â votre thèse, vos lignes rouges":"2.2 Stan filters ruthlessly â your thesis, your hard stops"},{id:"s02-dashboard",label:n?"2.3 Les matchs arrivent dans votre dashboard":"2.3 Matches land in your dashboard"}]}]},{eyebrow:n?"03 â Qualification · Quotidien":"03 â Qualification · Daily",groups:[{id:"s03-memo",label:n?"Stan rédige le mémo":"Stan writes the memo",children:[{id:"s03-directives",label:n?"Pipeline du mémo (D01âD09)":"Memo pipeline (D01âD09)"},{id:"s03-financial",label:n?"Blocs financiers":"Financial blocks"},{id:"s03-decision-engine",label:n?"Comment Stan décide":"How Stan makes decisions"},{id:"s03-decision-jobs",label:n?"Jobs 1â3 (gates & calibrage)":"Jobs 1â3 (gates & calibration)"},{id:"s03-decision-modules",label:n?"Modules 0â5 (multi-angles, spécialistes)":"Modules 0â5 (multi-angle, specialists)"},{id:"s03-verdict-engine",label:"Verdict & Neural Command Line"}]},{id:"s03-override",label:n?"Votre interface â OUI ou NON sur les top picks":"Your interface â YES or NO on top picks",children:[{id:"s03-cd-call",label:n?"Décisions ouvertes â échéances intégrées, aucune décision perdue":"Open decisions â built-in deadlines, no decision ever lost"},{id:"s03-ceo-veto",label:n?"CEO_VETO â ce que le NON fait à la thèse":"CEO_VETO â what NO does to the thesis"},{id:"s03-convergence",label:n?"Le mécanisme de convergence â taux de OUI + taux de MATCH":"The convergence mechanism â YES rate + MATCH rate"},{id:"s03-monday",label:n?"Lâemail hebdo du lundi â centre de commande":"The Monday
3201weekly email â command center"}]},{id:"s03-stan-intro",label:n?"Le deal est suivi jusquâà la sortie":"The deal is tracked to exit",children:[{id:"s03-stan-tabs",label:n?"5 onglets â vue dâensemble":"5 tabs â overview"},{id:"s03-tab-parcours",label:n?"Parcours â cycle de vie en 7 phases":"Parcours â 7-phase lifecycle"},{id:"s03-tab-chat",label:"Chat"},{id:"s03-tab-skills",label:n?"Skills (20+ livrables)":"Skills (20+ outputs)"},{id:"s03-tab-outputs",label:n?"Livrables":"Outputs"},{id:"s03-tab-history",label:n?"Historique":"History"},{id:"s03-stan-backend",label:n?"Backend & persistance":"Backend & persistence"}]}]},{eyebrow:n?"04 â Deal Intelligence · à la demande":"04 â Deal Intelligence · On demand",groups:[{id:"step-04",label:n?"Tous vos deals. Nâimporte quel livrable. Pour nâimporte quel interlocuteur.":"All your deals. Any output. For any stakeholder.",children:[{id:"s04-app",label:n?"4.1 Le dashboard Deal Intelligence":"4.1 The Deal Intelligence Dashboard"},{id:"s04-actions",label:n?"4.2 6 actions packagées":"4.2 6 packaged actions"},{id:"s04-freetext",label:n?"4.3 Requêtes en texte libre":"4.3 Free-text queries"},{id:"s04-backend",label:n?"4.4 Backend & déploiement":"4.4 Backend & deployment"}]}]},{eyebrow:n?"05 â Ãvolution hebdo · Chaque lundi":"05 â Weekly Evolution · Every Monday",groups:[{id:"step-05",label:n?"Stan devient plus pertinent. Sans rien faire de votre part.":"Stan gets smarter. Without you doing anything.",children:[{id:"s05-decisions",label:n?"5.1 Stan lit chaque décision que vous avez prise":"5.1 Stan reads every decision you made"},{id:"s05-mutations",label:n?"5.2 Le JSON de la Fund Thesis mute":"5.2 The Fund Thesis JSON mutates"},{id:"s05-pipeline",label:n?"5.2.a Pipeline du moteur hebdo (7 étapes)":"5.2.a Weekly engine pipeline (7 steps)"},{id:"s05-ncl-structure",label:n?"5.2.b Structure de la NCL":"5.2.b NCL structure"},{id:"s05-rules",label:n?"5.2.c Règles de mutation par signal":"5.2.c Mutation rules per signal"},{id:"s05-priority",label:n?"5.2.d Règles de priorité & de seuil":"5.2.d Priority & threshold rules"},{id:"s05-frozen",label:n?"5.2.e Champs figés vs modifiables":"5.2.e Frozen vs updatable fields"},{id:"s05-rebalance",label:n?"5.2.f Cycle de vie & décroissance des flags":"5.2.f Flag lifecycle & decay"},{id:"s05-validation",label:n?"5.2.g Gate de validation":"5.2.g Validation gate"},{id:"s05-write-paths",label:n?"5.2.h Les 3 voies dâécriture":"5.2.h The 3 write paths"},{id:"s05-loop",label:n?"5.3 Le deal flow du lundi est déjà plus précis":"5.3 Monday's deal flow is already sharper"}]}]},{eyebrow:n?"Couche email":"Email layer",groups:[{id:"email",label:n?"Trois rythmes":"Three rhythms",children:[{id:"email-rhythms",label:n?"Ponctuel · Quotidien · Hebdo":"Ad hoc · Daily · Weekly"}]}]}]}const ej=h1("en"),nm=ej.flatMap(t=>t.groups.flatMap(n=>[n.id,...n.children.map(r=>r.id)])),tj={strategy:"step-01",sourcing:"step-02",qualification:"step-03",evolution:"step-05",convergence:"s03-convergence",override:"s03-override",mutations:"s05-rules",validation:"s05-validation","ncl-table":"g-ncl","email-layer":"email-rhythms","sourcing-config":"step-02","sourcing-filtre":"s02-filter","sourcing-moteurs":"s02-engines","semantic-filters":"s02-filter","scoring-weights":"s02-filter"};function nj(){const{lang:t,localizePath:n}=ae(),r=t==="fr",i=h1(t),[s,a]=m.useState(nm[0]),[o,c]=m.useState(!1);return ht({en:{title:"Proplace Documentation â The 5-step deal-flow pipeline",description:"Full Proplace documentation: every sourcing engine, qualification module, financial model, mutation rule and validation gate of the 5-step deal-flow pipeline."},fr:{title:"Documentation Proplace â Le pipeline deal flow en 5 étapes",description:"Documentation complète de Proplace : chaque moteur de sourcing, module de qualification, modèle financier, règle de mutation et gate de validation du pipeline en 5 étapes."}}),m.useEffect(()=>{const l=()=>{if(!window.location.hash)return;const d=window.location.hash.slice(1),p=tj[d]||d,u=document.getElementById(p);if(u){const g=u.getBoundingClientRect().top+window.scrollY-80;window.scrollTo({top:g,behavior:"smooth"})}};return setTimeout(l,50),setTimeout(l,300),window.addEventListener("hashchange",l),()=>window.removeEventListener("hashchange",l)},[]),m.useEffect(()=>{const l=()=>{const d=nm.map(p=>{const u=document.getElementById(p);return u?{id:p,top:Math.abs(u.getBoundingClientRect().top-80)}:{id:p,top:Number.POSITIVE_INFINITY}});d.sort((p,u)=>p.top-u.top),d[0]&&a(d[0].id)};return window.addEventListener("scroll",l,{passive:!0}
3201),l(),()=>window.removeEventListener("scroll",l)},[]),e.jsxs("div",{className:"doc-page",children:[e.jsx("style",{children:rj}),e.jsxs("div",{className:"doc-topbar",children:[e.jsx("a",{href:n("/"),className:"pp-brand","aria-label":r?"Retour à lâaccueil":"Back to home",children:e.jsx("img",{src:"/logo.png",alt:"Proplace",className:"pp-brand-logo"})}),e.jsx("span",{className:"doc-topbar-sep",children:"/"}),e.jsx("span",{className:"doc-topbar-context",children:r?"Documentation · pipeline en 5 étapes · v5.4":"Documentation · 5-step pipeline · v5.4"}),e.jsx("a",{href:n("/setup"),className:"doc-topbar-cta",children:r?"Ouvrir lâassistant (démo) â":"Open the wizard (demo) â"})]}),e.jsxs("div",{className:"doc-root",children:[e.jsx("button",{className:"doc-mobile-toggle",onClick:()=>c(l=>!l),"aria-label":r?"Afficher/masquer la navigation":"Toggle navigation",children:o?r?"â Fermer":"â Close":"â° Menu"}),e.jsx("aside",{className:`doc-sidebar${o?" open":""}`,children:e.jsx("nav",{className:"doc-nav",children:i.map(l=>e.jsxs("div",{className:"doc-nav-section",children:[e.jsx("div",{className:"doc-nav-eyebrow",children:l.eyebrow}),l.groups.map(d=>e.jsxs("div",{className:"doc-nav-group",children:[e.jsx("a",{href:`#${d.id}`,className:`doc-nav-group-label${s===d.id?" active":""}`,onClick:()=>c(!1),children:d.label}),d.children.map(p=>e.jsx("a",{href:`#${p.id}`,className:`doc-nav-item${s===p.id?" active":""}`,onClick:()=>c(!1),children:p.label},p.id))]},d.id))]},l.eyebrow))})}),e.jsxs("main",{className:"doc-content",children:[e.jsxs("section",{className:"doc-section",children:[e.jsx("span",{id:"intro-overview",className:"doc-anchor"}),e.jsx("div",{className:"eyebrow",children:"Introduction"}),e.jsx("h1",{className:"doc-h1",children:r?"Proplace, de bout en bout.":"Proplace, end to end."}),e.jsx("p",{className:"doc-lead",children:r?e.jsx(e.Fragment,{children:"Proplace transforme une heure de stratégie â lâheure que vous passez à encoder votre thèse dâinvestissement dans lâassistant â en un moteur de deal flow quotidien et automatisé qui sâaffine chaque lundi à partir de vos décisions. Cette documentation va plus loin que la page dâaccueil : chaque moteur, chaque règle de mutation, chaque contrôle de validation, détaillés pour quâun lecteur nâayant jamais utilisé le système puisse suivre ce qui arrive réellement à chaque deal."}):e.jsx(e.Fragment,{children:"Proplace turns one hour of strategy â the hour you spend encoding your investment thesis in the wizard â into a daily, automated deal-flow engine that sharpens itself every Monday from your decisions. This documentation goes deeper than the homepage: every engine, every mutation rule, every validation check, spelled out so a reader who has never used the system can follow what actually happens to each deal."})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Le produit sâorganise autour de ",e.jsx("strong",{children:"cinq étapes en boucle fermée"})," â Stratégie, Sourcing, Qualification, Deal Intelligence, Ãvolution. Lâétape 1 a lieu une seule fois (vous écrivez la thèse). Les étapes 2 à 4 tournent chaque jour en pilote automatique et vous demandent, au plus, un OUI ou un NON en un clic sur les opportunités à plus forte conviction. Lâétape 5 tourne chaque lundi et réécrit la thèse à partir de vos OUI et de vos NON. La boucle redémarre alors, un peu plus précise chaque semaine."]}):e.jsxs(e.Fragment,{children:["The product is organised around ",e.jsx("strong",{children:"five steps in a closed loop"})," â Strategy, Sourcing, Qualification, Deal Intelligence, Evolution. Step 1 happens once (you write the thesis). Steps 2 to 4 run every day on autopilot and hand you, at most, a one-click YES or NO to give on the highest-conviction picks. Step 5 runs every Monday and rewrites the thesis from what you said YES and NO to. The loop then starts again, a little sharper every week."]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Lisez de haut en bas pour le modèle mental complet, ou sautez au chapitre qui correspond à votre question. Chaque terme technique employé ci-dessous est défini dans le ",e.jsx("a",{href:"#glossary",children:"Glossaire"})," ","en bas de cette doc."]}):e.jsxs(e.Fragment,{children:["Read top to bottom for the full mental model, or jump to the chapter that matches your question. Every technical term used below is defined in the ",e.jsx("a",{href:"#glossary",children:"Glossary"})," at the bottom of this doc."]})}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Comment lire cette doc.":"How to read this doc."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Chaque chapitre reflète une étape de la page dâaccueil. Les sous-sections ajoutent le détail technique qui ne tient pas sur la page marketing â formes de JSON, ID de directives, endpoints backend, couches de persistance, règles de mutation. Les zones marquées ",e.jsx("code",{children:"MAKE PROMPT ZONE"})," sont des copies mot pour mot des prompts LLM tournant en production ;
3201 elles sont longues à dessein, pour quâune nouvelle recrue ou un auditeur puisse lire la logique exacte sans accès Make.com."]}):e.jsxs(e.Fragment,{children:["Each chapter mirrors a step from the homepage. Sub-sections add the technical detail that doesn't fit on the marketing page â JSON shapes, directive IDs, backend endpoints, persistence layers, mutation rules. Zones marked ",e.jsx("code",{children:"MAKE PROMPT ZONE"})," are verbatim mirrors of the LLM prompts running in production; they are long on purpose, so a new hire or an auditor can read the exact logic without a Make.com login."]})})]}),e.jsx("span",{id:"intro-loop",className:"doc-anchor"}),e.jsx("h2",{className:"doc-h2",children:r?"La boucle fermée en cinq étapes":"The five-step closed loop"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Ãtape":"Step"}),e.jsx("th",{children:"Cadence"}),e.jsx("th",{children:r?"Votre temps":"Your time"}),e.jsx("th",{children:r?"Livrable":"Deliverable"})]})}),e.jsx("tbody",{children:ni.map(l=>{const d=r?u1(l):l;return e.jsxs("tr",{children:[e.jsx("td",{children:e.jsxs("strong",{children:[l.id," â ",d.label]})}),e.jsx("td",{children:d.cadence}),e.jsx("td",{children:d.yourTime}),e.jsx("td",{children:d.deliverable})]},l.id)})})]}),e.jsx("span",{id:"intro-truth",className:"doc-anchor"}),e.jsx("h2",{className:"doc-h2",children:r?"Où vit la vérité":"Where the truth lives"}),e.jsx("p",{className:"doc-text",children:r?"Proplace sâappuie sur quatre sources de vérité. Savoir laquelle consulter évite la confusion quand le comportement change.":"Proplace runs on four sources of truth. Knowing which one to read prevents confusion when behaviour changes."}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Système":"System"}),e.jsx("th",{children:r?"Ce dont il est garant":"What it owns"}),e.jsx("th",{children:r?"Comment lâinspecter":"How to inspect"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"Site proplace.co":"proplace.co website"})}),e.jsx("td",{children:r?"Narratif public, cadrage en 5 étapes, modes, moteurs, verdicts":"Public narrative, 5-step framing, modes, engines, verdicts"}),e.jsx("td",{children:r?"Lire la page dâaccueil et cette doc":"Read the homepage and this doc"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Fund Thesis Builder"})}),e.jsx("td",{children:r?"Ãditer le JSON fund_thesis v5.4 avec validation Pydantic en direct â la source unique de vérité dans Airtable":"Edit the fund_thesis v5.4 JSON with live Pydantic validation â the single source of truth in Airtable"}),e.jsxs("td",{children:[r?"Ouvrir":"Open"," ",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"})]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Deal Intelligence Dashboard"})}),e.jsx("td",{children:r?"UI du pipeline, 6 actions packagées, blocs de décision":"Pipeline UI, 6 packaged actions, decision blocks"}),e.jsxs("td",{children:[r?"Ouvrir":"Open"," ",e.jsx("code",{children:"proplace.co/chat/?fund=<slug>"})]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"App Stan":"Stan app"})}),e.jsx("td",{children:r?"Sidebar du mémo, 5 onglets, 20+ skills, persistance":"Memo sidebar, 5 tabs, 20+ skills, persistence"}),e.jsxs("td",{children:[r?"Ouvrir nâimporte quel mémo sur":"Open any memo on"," ",e.jsx("code",{children:"analysis.proplace.co"})]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"Scénarios Make":"Make scenarios"})}),e.jsx("td",{children:r?"Directives de qualification, rapports spécialistes, NCL dâévolution":"Qualification directives, specialist reports, evolution NCL"}),e.jsxs("td",{children:[r?"Connecté à Make.com â contenu reproduit dans cette doc, marqué":"Logged into Make.com â content mirrored in this doc, marked"," ",e.jsx("code",{children:"MAKE PROMPT ZONE"})]})]})]})]})]}),e.jsxs("div",{className:"callout success",style:{margin:"24px 0"},children:[e.jsx("strong",{children:r?"Prêt à écrire votre thèse ?":"Ready to write your thesis?"}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Les clients éditent leur thè
3201se sur ",e.jsx("a",{href:"https://analysis.proplace.co/thesis/",children:e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"})})," â un assistant en 13 sections (Identité + MATCH de sourcing + OUI de qualification par angle + 8 sections de config globale). Chaque sauvegarde passe par le validateur Pydantic v5.4 avant le PATCH Airtable â impossible dâécrire un JSON cassé. LâURL personnelle est livrée à lâonboarding. La page publique ",e.jsx("a",{href:n("/setup"),children:e.jsx("code",{children:"proplace.co/setup"})})," reste disponible comme démo statique (sans sauvegarde) pour que les prospects explorent lâassistant avant de signer."]}):e.jsxs(e.Fragment,{children:["Clients edit their thesis on ",e.jsx("a",{href:"https://analysis.proplace.co/thesis/",children:e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"})})," â a wizard in 13 sections (Identity + Sourcing MATCH + Qualification YES per angle + 8 global-config sections). Every save goes through the Pydantic v5.4 validator before the Airtable PATCH â impossible to write a broken JSON. The personal URL is delivered at onboarding. The public page ",e.jsx("a",{href:n("/setup"),children:e.jsx("code",{children:"proplace.co/setup"})})," stays available as a static demo (no save) for prospects to explore the wizard before signing."]})}),e.jsx("p",{style:{marginTop:10},children:r?e.jsxs(e.Fragment,{children:["â La colonne ",e.jsx("code",{children:"fund_thesis"})," dans Airtable ne doit jamais être éditée directement â passez toujours par lâapp, qui valide avant dâécrire. Les champs figés (mode, hurdles, géographie) ne dérivent jamais dâeux-mêmes ; seules vos mutations hebdomadaires affinent les exa_queries, les flags et les anchors."]}):e.jsxs(e.Fragment,{children:["â The ",e.jsx("code",{children:"fund_thesis"})," column in Airtable must never be edited directly â always go through the app, which validates before writing. Frozen fields (mode, hurdles, geography) never drift on their own; only your weekly mutations sharpen the exa_queries, flags and anchors."]})})]}),e.jsx(is,{step:ni[0]}),e.jsxs("section",{className:"doc-section",children:[e.jsx("span",{id:"s01-mode",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"1.1 Vous choisissez votre mode â VC / M&A / LBO":"1.1 You choose your mode â VC / M&A / LBO"}),e.jsx("p",{className:"doc-text",children:r?e.jsx(e.Fragment,{children:"Le mode est la première chose dont Stan a besoin. Il calibre tout lâaval : la formule du modèle financier (VC : ARR + multiple de sortie, LBO : cash-on-cash après dette, M&A stratégique : VAN des synergies) et les critères de qualification. à choisir une fois. Le mode est FIGà â le moteur hebdomadaire ne le change jamais. Si votre mandat évolue, retournez sur analysis.proplace.co/thesis/?fund=<slug> pour le changer."}):e.jsx(e.Fragment,{children:"The mode is the first thing Stan needs. It calibrates everything downstream: the financial model formula (VC: ARR + exit multiple, LBO: cash-on-cash post-debt, M&A Strategic: NPV of synergies) and the qualification criteria. Pick once. The mode is FROZEN â the weekly engine never changes it. If your mandate evolves, return to analysis.proplace.co/thesis/?fund=<slug> to switch."})}),e.jsx("div",{className:"grid-2",children:k5.map(l=>{const d=r?R5(l):l;return e.jsxs("div",{className:"card",children:[e.jsx("div",{className:"card-h",children:d.name}),e.jsx("div",{className:"card-p",children:d.desc})]},l.code)})}),e.jsx("span",{id:"s01-angles",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"1.2 Vous définissez 1 à 6 angles de sourcing":"1.2 You define 1 to 6 sourcing angles"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Un angle se configure à travers ",e.jsx("strong",{children:"4 zones de schéma"})," qui sâindexent toutes sur le même ",e.jsx("code",{children:"angle_id"})," : ",e.jsx("code",{children:"sourcing_config.angles[id]"}),", ",e.jsx("code",{children:"semantic_filters.angles[id]"}),", ",e.jsx("code",{children:"benchmarks.angles[id]"}),", ",e.jsx("code",{children:"narrative_alpha.angles[id]"}),". Le CEO fixe les valeurs initiales dans lâassistant de thèse (",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"}),") ; le Weekly Evolution Engine (scénario Make ",e.jsx("code",{children:"3517126"}),") en mute un sous-ensemble chaque lundi à 16h UTC. Lâangle pilote ensuite ",e.jsx("strong",{children:"deux pipelines indépendants"})," qui lisent des sous-ensembles différents du schéma â le sourcing le matin, la qualification dès quâun candidat matche."]}):e.jsxs(e.Fragment,{children:["An angle is configured across ",e.jsx("strong",{children:"4 schema zones"})," that all key off the same ",e.jsx("code",{children:"angle_id"}),": ",e.jsx("code",{children:"sourcing_config.angles[id]"}),", ",e.jsx("code",{children:"semantic_filters.angles[id]"}),", ",e.jsx("code",{children:"benchmarks.angles[id]"}),", ",e.jsx("code",{children:"narrative_alpha.angles[id]"}),". The CEO sets the initial values in the thesis wizard (",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"}),"); the Weekly Evolution Engine (Make scenario ",e.jsx("code",{children:"3517126"}),") mutates a subset every Monday 4 PM UTC. The angle then drives ",e.jsx("strong",{children:"two independent pipelines"})," that read different subsets of the schema â sourcing in the morning, qualification once a candidate matches."]})}),e.jsx("h4",{className:"doc-h4",children:r?"Pipeline de sourcing â ce quâun angle fait chaque matin à 8h30 UTC":"Sourcing pipeline â what an angle does every morning at 8:30 AM UTC"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Lâendpoint Modal quotidien ",e.jsx("code",{children:"https://alexandre-79537--sourcing-agent-web-v3.modal.run"})," (scénario Make ",e.jsx("code",{children:"4950251"}),") exécute 15 moteurs en parallèle. Chaque candidat quâils font remonter passe par un évaluateur de gate unique qui décide MATCH ou NO MATCH."]}):e.jsxs(e.Fragment,{children:["The daily Modal endpoint ",e.jsx("code",{children:"https://alexandre-79537--sourcing-agent-web-v3.modal.run"})," (Make scenario ",e.jsx("code",{children:"4950251"}),") runs 15 engines in parallel. Each candidate they surface is passed through a single gate evaluator that decides MATCH or NO MATCH."]})}),e.jsx("h5",{className:"doc-h5",children:r?"Ãtape 1 â les moteurs font remonter des candidats":"Step 1 â engines surface candidates"}),e.jsx("p",{className:"doc-text",children:r?"Chaque moteur lit un champ par-angle différent :":"Each engine reads a different per-angle field:"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Moteur"
3201:"Engine"}),e.jsx("th",{children:r?"Champ par-angle lu":"Per-angle field read"}),e.jsx("th",{children:r?"Cardinalité / format":"Cardinality / format"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:"Exa Semantic"}),e.jsx("td",{children:e.jsx("code",{children:"exa_queries"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["exactement 7 phrases, chacune commençant par ",e.jsx("code",{children:'"Here is a "'})]}):e.jsxs(e.Fragment,{children:["exactly 7 phrases, each starts with ",e.jsx("code",{children:'"Here is a "'})]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Exa Similar"}),e.jsx("td",{children:e.jsx("code",{children:"competitor_anchors"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["min 10, max 20 entrées (doit inclure ",e.jsx("code",{children:"gold_anchor"}),")"]}):e.jsxs(e.Fragment,{children:["min 10, max 20 entries (must include ",e.jsx("code",{children:"gold_anchor"}),")"]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"LinkedIn Posts"}),e.jsx("td",{children:e.jsx("code",{children:"apify_linkedin_posts_queries"})}),e.jsx("td",{children:r?"exactement 4 requêtes":"exactly 4 queries"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"LinkedIn Jobs"}),e.jsx("td",{children:e.jsx("code",{children:"apify_linkedin_jobs_calendar"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["7 créneaux de la semaine ",e.jsxs("code",{children:["{","day, keywords, city","}"]})]}):e.jsxs(e.Fragment,{children:["7 weekday slots ",e.jsxs("code",{children:["{","day, keywords, city","}"]})]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Crunchbase Search"}),e.jsx("td",{children:e.jsx("code",{children:"apify_crunchbase_calendar"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["7 créneaux de la semaine ",e.jsxs("code",{children:["{","day, city, industry, employees","}"]})]}):e.jsxs(e.Fragment,{children:["7 weekday slots ",e.jsxs("code",{children:["{","day, city, industry, employees","}"]})]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Google Alerts"}),e.jsx("td",{children:e.jsx("code",{children:"google_alert_queries"})}),e.jsx("td",{children:r?"8â12 requêtes":"8â12 queries"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Pappers FR · Google News · RSS · HN · GitHub · CRT · Fundraising · Backfill"}),e.jsxs("td",{children:[e.jsx("code",{children:"sectors_plain"})," ",r?"(union à lâéchelle du fonds de tous les angles)":"(fund-wide union of all angles)"," + ",e.jsx("code",{children:"cities"})," ",r?"partagés au fonds":"fund-shared"," · ",e.jsx("code",{children:"naf_codes"})," · ",e.jsx("code",{children:"founder_exodus_sources"})," · ",e.jsx("code",{children:"backfill_sources"})]}),e.jsxs("td",{children:[e.jsx("code",{children:"sectors_plain"})," ",r?"max 12 entrées":"max 12 entries"]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Exa Websets"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Même pool dâ",e.jsx("code",{children:"exa_queries"}),", vérification dâabord"]}):e.jsxs(e.Fragment,{children:["Same ",e.jsx("code",{children:"exa_queries"})," pool, verification-first"]})}),e.jsx("td",{children:r?"Tourne en async avec les 14 autres":"Runs async alongside the other 14"})]})]})]}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Les moteurs de pool (Exa Semantic, LinkedIn Posts) tirent proportionnellement au ",e.jsx("code",{children:"weight â [1, 5]"})," de chaque angle. Les moteurs calendaires sâactivent sur proportionnellement plus de semaines ISO. Les moteurs always-on scannent lâunion à lâéchelle du fonds."]}):e.jsxs(e.Fragment,{children:["Pool engines (Exa Semantic, LinkedIn Posts) draw weight-proportionally to each angle's ",e.jsx("code",{children:"weight â [1, 5]"}),". Calendar engines activate during proportionally more ISO weeks. Always-on engines scan the fund-wide union."]})}),e.jsx("h5",{className:"doc-h5",children:r?"Ãtape 2 â un gate, deux couches (câest la partie que la plupart ratent)":"Step 2 â one gate, two layers (this is the part most people miss)"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Chaque candidat remont
3201é par les 15 moteurs passe par ",e.jsx("code",{children:"execution/sourcing_v3/gate.py::evaluate_lead()"})," â un gate Gemini Flash unique. Il lit ",e.jsx("strong",{children:"à la fois"})," le ",e.jsx("code",{children:"single_gate"})," partagé au fonds ET le ",e.jsx("code",{children:"match_signal"})," + ",e.jsx("code",{children:"reject_signal"})," de chaque angle dans le même prompt :"]}):e.jsxs(e.Fragment,{children:["Every candidate surfaced by the 15 engines goes through ",e.jsx("code",{children:"execution/sourcing_v3/gate.py::evaluate_lead()"})," â a single Gemini Flash gate. It reads ",e.jsx("strong",{children:"both"})," the fund-shared ",e.jsx("code",{children:"single_gate"})," AND each angle's ",e.jsx("code",{children:"match_signal"})," + ",e.jsx("code",{children:"reject_signal"})," in the same prompt:"]})}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsxs("strong",{children:["Couche 1 â ",e.jsx("code",{children:"single_gate"})," partagé au fonds"]})," : la prose maîtresse 2-STEP stockée dans ",e.jsx("code",{children:"sourcing_config.shared.single_gate"}),". STEP 1 est une question verticale (« cette société sert-elle [vertical cible] comme activité PRINCIPALE ? ») avec 4â6 rejets explicites de verticaux proches. STEP 2 est le dispatch dâangle. Si STEP 1 échoue â NO MATCH immédiat, STEP 2 est sauté. Augmenté de ",e.jsx("code",{children:"sourcing_config.shared.near_miss_examples"})," (sociétés taguées MATCH par erreur â alimenté via le bouton Airtable « â Flag FP »)."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Couche 2 â critères par-angle"})," : pour chaque angle actif, ",e.jsx("code",{children:"sourcing_config.angles[id].match_signal"})," est injecté comme ",e.jsxs("code",{children:["[angle_id] ","{","match_signal","}"]})," dans la section MATCH CRITERIA du prompt, et ",e.jsx("code",{children:"reject_signal"})," dans REJECT CRITERIA. Le LLM du gate choisit lâangle dont le ",e.jsx("code",{children:"match_signal"})," colle le mieux â ou retourne NO MATCH si aucun ne colle."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsxs("strong",{children:["Layer 1 â fund-shared ",e.jsx("code",{children:"single_gate"})]}),": the master 2-STEP prose stored at ",e.jsx("code",{children:"sourcing_config.shared.single_gate"}),'. STEP 1 is a vertical question ("does this company serve [target vertical] as its PRIMARY activity?") with 4â6 explicit near-vertical rejections. STEP 2 is the angle dispatch. If STEP 1 fails â immediate NO MATCH, STEP 2 is skipped. Augmented with ',e.jsx("code",{children:"sourcing_config.shared.near_miss_examples"}),' (companies previously tagged MATCH by mistake â grown via the Airtable "â Flag FP" button).']}),e.jsxs("li",{children:[e.jsx("strong",{children:"Layer 2 â per-angle criteria"}),": for every active angle, ",e.jsx("code",{children:"sourcing_config.angles[id].match_signal"})," is injected as ",e.jsxs("code",{children:["[angle_id] ","{","match_signal","}"]})," in the prompt's MATCH CRITERIA section, and ",e.jsx("code",{children:"reject_signal"})," in REJECT CRITERIA. The gate LLM picks the angle whose ",e.jsx("code",{children:"match_signal"})," best fits â or returns NO MATCH if none does."]})]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Sortie : MATCH (avec lâ",e.jsx("code",{children:"angle_id"})," choisi) â le deal entre en qualification. NO MATCH â écarté, pas de mémo, pas de qualification."]}):e.jsxs(e.Fragment,{children:["Output: MATCH (with chosen ",e.jsx("code",{children:"angle_id"}),") â the deal enters qualification. NO MATCH â dropped, no memo, no qualification."]})}),e.jsx("h4",{className:"doc-h4",children:r?"Pipeline de qualification â ce quâun angle fait dès quâun MATCH arrive":"Qualification pipeline â what an angle does once a MATCH lands"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Le scénario Make BP1 ",e.jsx("code",{children:"3345980"})," (149 modules) puis le BP2 ",e.jsx("code",{children:"3869328"})," (200 modules) prennent le relais. Ils lisent un sous-ensemble de la config dâangle différent du sourcing â narratif + patterns de flags + benchmarks, pas des listes de requêtes."]}):e.jsxs(e.Fragment,{children:["Make BP1 scenario ",e.jsx("code",{children:"3345980"})," (149 modules) then BP2 scenario ",e.jsx("code",{children:"3869328"})," (200 modules) take over. They read a different subset of the angle config than sourcing â narrative + flag patterns + benchmarks, not query lists."]})}),e.jsx("h5",{className:"doc-h5",children:r?"Ãtape 1 â détection dâangle du Module 0":"Step 1 â Module 0 angle detection"}),e.jsx("p",{className:"doc-text",children:r?e.jsx(e.Fragment,{children:"Le Module 0 note chaque angle actif sur trois signaux qualitatifs (0â3 par angle, PAS un score de verdict numérique) :"}):e.jsx(e.Fragment,{children:"Module 0 scores each active angle on three qualitative signals (0â3 per angle, NOT a numeric verdict score):"})}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Signal 1 â adéquation du business model."})," OUI = 1 / NON = 0. Ãvalué contre ",e.jsx("code",{children:"match_signal"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Signal 2 â adéquation du vocabulaire sectoriel."})," OUI = 1 / NON = 0. Ãvalué contre ",e.jsx("code",{children:"sectors_plain"})," + ",e.jsx("code",{children:"priority_flags"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Signal 3 â adéquation du gap stratég
3201ique."})," OUI = 1 / NON = 0. Ãvalué contre ",e.jsx("code",{children:"narrative_alpha.angles[id]"}),"."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Signal 1 â business model match."})," YES = 1 / NO = 0. Read against ",e.jsx("code",{children:"match_signal"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Signal 2 â sector vocabulary match."})," YES = 1 / NO = 0. Read against ",e.jsx("code",{children:"sectors_plain"})," + ",e.jsx("code",{children:"priority_flags"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Signal 3 â strategic gap match."})," YES = 1 / NO = 0. Read against ",e.jsx("code",{children:"narrative_alpha.angles[id]"}),"."]})]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Un angle est DÃTECTà si ",e.jsx("code",{children:"total ⥠1"}),". Jusquâà 5 angles détectés passent dans le Module 1 en parallèle. Sortie : ",e.jsx("code",{children:"angle_scores"}),", ",e.jsx("code",{children:"angle_detection_evidence"}),", ",e.jsx("code",{children:"primary_angle"}),"."]}):e.jsxs(e.Fragment,{children:["An angle is DETECTED if ",e.jsx("code",{children:"total ⥠1"}),". Up to 5 detected angles flow into Module 1 in parallel. Output: ",e.jsx("code",{children:"angle_scores"}),", ",e.jsx("code",{children:"angle_detection_evidence"}),", ",e.jsx("code",{children:"primary_angle"}),"."]})}),e.jsx("h5",{className:"doc-h5",children:r?"Ãtape 2 â analystes spécialistes Module 1A/1B/2/3 (budget de Q&R égal)":"Step 2 â Module 1A/1B/2/3 specialist analysts (equal Q&A budget)"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Trois analystes tournent par angle détecté avec un ",e.jsx("strong",{children:"budget de questions K égal"})," pour que les angles faibles ne soient pas affamés par les plus forts :"]}):e.jsxs(e.Fragment,{children:["Three analysts run per detected angle with an ",e.jsx("strong",{children:"equal question budget K"})," so weak angles aren't starved by stronger ones:"]})}),e.jsxs("ul",{className:"doc-list",children:[e.jsx("li",{children:e.jsx("strong",{children:"Market & Timing"})}),e.jsx("li",{children:e.jsx("strong",{children:"Moat & Competition"})}),e.jsx("li",{children:e.jsx("strong",{children:"Founder Financial Health & Risk"})})]}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Chaque analyste évalue implicitement le deal contre les ",e.jsx("code",{children:"green_flags"})," et ",e.jsx("code",{children:"red_flags"})," de lâangle. « ",e.jsx("strong",{children:"Déclenché"})," » (Fired) = lâanalyste a observé le pattern décrit par le flag (chaîne ⤠40 caractères) dans les preuves de la société. Le déclenchement nâest pas un appel API distinct â câest une étape de raisonnement implicite dans la Q&R de lâanalyste."]}):e.jsxs(e.Fragment,{children:["Each analyst implicitly evaluates the deal against the angle's ",e.jsx("code",{children:"green_flags"})," and ",e.jsx("code",{children:"red_flags"}),'. "',e.jsx("strong",{children:"Fired"}),`" = the analyst observed the pattern described by the flag (⤠40-char string) in the company evidence. The firing isn't a separate API call â it's an implicit reasoning step inside the analyst's Q&A.`]})}),e.jsx("h5",{className:"doc-h5",children:r?"Ãtape 3 â synthèse Module 3 + Avocat du Diable Module 4":"Step 3 â Module 3 synthesis + Module 4 Devil's Advocate"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Le Module 3 synthétise les trois pistes dâanalystes. Le Module 4 attaque la synthèse en Avocat du Diable et nomme ",e.jsx("strong",{children:"3 vérifications obligatoires"})," que le CEO devrait mener si le deal devient un CALL."]}):e.jsxs(e.Fragment,{children:["Module 3 synthesises the three analyst tracks. Module 4 attacks the synthesis as Devil's Advocate and names ",e.jsx("strong",{children:"3 mandatory verifications"})," the CEO should run if the deal becomes a CALL."]})}),e.jsx("h5",{className:"doc-h5",children:r?"Ãtape 4 â verdict final du Module 5 (CALL · CONSIDER · MONITOR · PASS)":"Step 4 â Module 5 final verdict (CALL · CONSIDER · MONITOR · PASS)"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Le Module 5 lit la synthèse du Module 3, la critique du Module 4, le calibrage du Module 0, ",e.jsx("code",{children:"narrative_alpha.angles[primary_angle]"})," pour le paragraphe dâadéquation à la thèse, et le contrôle dâexclusion dure contre ",e.jsx("code",{children:"binary_gates.exclusions.*"})," (toute exclusion déclenchée â auto-PASS). Le verdict est du ",e.jsx("strong",{children:"pur raisonnement qualitatif LLM"})," sur ces entrées. Ce nâest PAS une formule de comptage de flags ni un score numérique."]}):e.jsxs(e.Fragment,{children:["Module 5 reads the Module 3 synthesis, Module 4 critique, Module 0 calibration, ",e.jsx("code",{children:"narrative_alpha.angles[primary_angle]"})," for the fit-to-thesis paragraph, and the hard-exclusion check against ",e.jsx("code",{children:"binary_gates.exclusions.*"})," (any tripped â auto-PASS). The verdict is ",e.jsx("strong",{children:"pure LLM qualitative reasoning"})," over those inputs. It is NOT a flag count formula and NOT a numeric score."]})}),e.jsxs("div",{className:"callout warning",children:[e.jsx("strong",{children:r?"Démystifier « scoring / flags / déclenché » â et pourquoi ce design compose semaine après semaine.":'Demystifying "scoring / flags / fired" â and why this design compounds week after week.'}),e.jsx("p",{children:e.jsx("strong",{children:r?"Ce que les termes veulent dire aujourdâhui :":"What the terms mean today:"})}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Pas de score de verdict numérique en v5.4."})," ",e.jsx("code",{children:"scoring_weights"})," a été retiré. Le verdict du Module 5 est qualitatif, choisi par le LLM parmi CALL · CONSIDER · MONITOR · PASS dâaprès la synthèse des analystes + la critique de lâAvocat du Diable + lâadéquation au narratif."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Les flags sont des bibliothèques de patterns, pas des poids."})," Chaque ",e.jsx("code",{children:"green_flag"})," / ",e.jsx("code",{children:"red_flag"})," est une courte chaîne (⤠40 caractères) décrivant un pattern que Stan cherche. Exemple : ",e.jsx("code",{children:'"founder previously sold to corporate"'})," (vert) ou ",e.jsx("code",{children:'"churn > 20% / year"'})," (rouge)."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Chaque flag porte un registre à 7 champs :"})," ",e.jsxs("code",{children:["{","flag, type, times_fired, times_evaluated_without_firing, last_fired, decay_status, query_weight","}"]}),". Le CEO écrit le texte du ",e.jsx("code",{children:"flag"})," une fois ; Stan maintient la télémétrie."]}
3201),e.jsxs("li",{children:[e.jsx("strong",{children:"« Déclenché » = pattern observé pendant la qualification."})," Quand les analystes Module 1A/1B/3 évaluent un deal, ils vérifient implicitement si chaque pattern vert/rouge colle aux preuves de la société. Si oui, ",e.jsx("code",{children:"times_fired += 1"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"La télémétrie de déclenchement ne calcule PAS le verdict."})," Câest lâentrée du Weekly Evolution Engine â un fait que le reste de ce bloc existe pour expliquer."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"No numeric verdict score in v5.4."})," ",e.jsx("code",{children:"scoring_weights"})," was removed. The Module 5 verdict is qualitative, picked by the LLM from CALL · CONSIDER · MONITOR · PASS based on the analyst synthesis + Devil's critique + narrative fit."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Flags are pattern libraries, not weights."})," Each ",e.jsx("code",{children:"green_flag"})," / ",e.jsx("code",{children:"red_flag"})," is a short string (⤠40 chars) that describes a pattern Stan looks for. Example: ",e.jsx("code",{children:'"founder previously sold to corporate"'})," (green) or ",e.jsx("code",{children:'"churn > 20% / year"'})," (red)."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Each flag carries a 7-field registry:"})," ",e.jsxs("code",{children:["{","flag, type, times_fired, times_evaluated_without_firing, last_fired, decay_status, query_weight","}"]}),". The CEO writes the ",e.jsx("code",{children:"flag"})," text once; Stan maintains the telemetry."]}),e.jsxs("li",{children:[e.jsx("strong",{children:'"Fired" = pattern observed during qualification.'})," When Module 1A/1B/3 analysts evaluate a deal, they implicitly check whether each green/red flag pattern fits the company's evidence. If yes, ",e.jsx("code",{children:"times_fired += 1"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"The firing telemetry does NOT compute the verdict."})," It's the input to the Weekly Evolution Engine â a fact the rest of this callout exists to explain."]})]})}),e.jsx("p",{children:e.jsx("strong",{children:r?"Pourquoi ce design â un calibrage en boucle fermée qui affine sourcing et qualification semaine après semaine.":"Why the design â closed-loop calibration that sharpens sourcing and qualification week by week."})}),e.jsx("p",{children:r?"La télémétrie existe pour une seule raison : câest le mécanisme par lequel Stan cesse dâêtre une thèse figée du jour 1 et devient un système qui compose avec chaque décision du CEO. Chaque lundi à 16h UTC, la télémétrie de déclenchement est lue par le Weekly Evolution Engine et remodèle le schéma pour les runs de la semaine suivante.":"The telemetry exists for one reason: it is the mechanism by which Stan stops being a frozen day-1 thesis and becomes a system that compounds with every CEO decision. Each Monday at 4 PM UTC the firing telemetry is read by the Weekly Evolution Engine and reshapes the schema for the next week's runs."}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Le sourcing sâaffine."})," Les green flags déclenchés ⥠3 fois avec ",e.jsx("code",{children:'query_weight = "high"'})," sont promus dans ",e.jsx("code",{children:"priority_flags"})," â ces chaînes deviennent des mots-clés dâinclusion obligatoires dans les requêtes Exa Semantic / LinkedIn Posts / Google Alerts de la semaine suivante, donc les moteurs quotidiens font remonter plus de deals ressemblant aux patterns que le raisonnement du CEO a réellement validés. Les signaux POISON (",e.jsx("code",{children:"times_fired ⥠2"}),") ajoutent une clause à ",e.jsx("code",{children:"reject_signal"})," â le gate du lendemain matin rejette immédiatement les deals similaires, avant quâun mémo complet ne soit construit. WATCHLIST ajoute un concurrent à ",e.jsx("code",{children:"competitor_anchors"})," â Exa Similar lâutilise comme nouvelle graine."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"La qualification sâaffine."})," Les green flags jamais déclenchés (",e.jsx("code",{children:"times_evaluated_without_firing ⥠20"}),") sont marqués ",e.jsx("code",{children:'decay_status = "review_pending"'})," et retirés de ",e.jsx("code",{children:"priority_flags"})," â les patterns morts cessent de polluer le raisonnement des analystes. Un CEO_VETO avec note extrait un ",e.jsx("code",{children:"TOXIC_KEYWORD"})," et réécrit directement ",e.jsx("code",{children:"narrative_alpha.angles[id]"})," â le raisonnement de qualification glisse vers le jugement réel du CEO, pas le narratif du jour 1. Les signaux CALL font tourner ",e.jsx("code",{children:"gold_anchor_pool"})," â les sociétés de référence positives restent à jour."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Les flags ne se suppriment jamais automatiquement."})," Ils restent dans le registre avec ",e.jsx("code",{children:'decay_status = "review_pending"'})," jusquâà ce que le CEO les élague à la revue de setup trimestrielle â Stan ne jette jamais silencieusement un signal."]}
3201)]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Sourcing gets sharper."})," Green flags that fired ⥠3 times with ",e.jsx("code",{children:'query_weight = "high"'})," get promoted into ",e.jsx("code",{children:"priority_flags"})," â those strings become mandatory inclusion keywords in next week's Exa Semantic / LinkedIn Posts / Google Alerts queries, so the daily engines surface more deals that look like the patterns the CEO's reasoning actually validated. POISON signals (",e.jsx("code",{children:"times_fired ⥠2"}),") append a clause to ",e.jsx("code",{children:"reject_signal"})," â the next morning's gate rejects similar deals immediately, before a full memo is built. WATCHLIST adds a competitor to ",e.jsx("code",{children:"competitor_anchors"})," â Exa Similar uses it as a new seed."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Qualification gets sharper."})," Green flags that never fired (",e.jsx("code",{children:"times_evaluated_without_firing ⥠20"}),") get marked ",e.jsx("code",{children:'decay_status = "review_pending"'})," and dropped from ",e.jsx("code",{children:"priority_flags"})," â dead patterns stop polluting the analysts' reasoning. CEO_VETO with a note extracts a ",e.jsx("code",{children:"TOXIC_KEYWORD"})," and rewrites ",e.jsx("code",{children:"narrative_alpha.angles[id]"})," directly â the qualification reasoning shifts to match the CEO's actual judgment, not the day-1 narrative. CALL signals rotate ",e.jsx("code",{children:"gold_anchor_pool"})," â the positive reference companies stay current."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Flags never auto-delete."})," They stay in the registry with ",e.jsx("code",{children:'decay_status = "review_pending"'})," until the CEO prunes them at the quarterly setup review â Stan never silently throws away signal."]})]})}),e.jsx("p",{children:r?"Lâeffet de composition dans le temps, câest la montée du taux de OUI documentée dans la section « Pourquoi câest important » : 20â30 % au mois 1 (Stan apprend) â 60â70 % au mois 3 (la thèse reflète le pattern du CEO) â 85 %+ au mois 6 (seuls les deals que le CEO validera lui parviennent). Sans la télémétrie de déclenchement, rien de cette composition nâa lieu â Stan sourcerait et qualifierait pour toujours sur les entrées initiales de lâassistant.":`The compound effect over time is the YES rate climb documented in the "Why this matters" section: 20â30% in month 1 (Stan is learning) â 60â70% in month 3 (thesis reflects the CEO's pattern) â 85%+ in month 6 (only deals the CEO will validate reach them). Without the firing telemetry, none of that compounding happens â Stan would source and qualify forever on the initial wizard inputs.`})]}),e.jsx("h4",{className:"doc-h4",children:r?"Matrice de clarté des champs par-angle":"Per-angle field clarity matrix"}),e.jsx("p",{className:"doc-text",children:r?"Pour chaque champ par-angle, exactement ce que chaque pipeline en fait â en clair, sans adjectifs cryptiques.":"For every per-angle field, exactly what each pipeline does with it â in plain English, no cryptic adjectives."}),e.jsx("div",{className:"doc-scroll",children:e.jsxs("table",{className:"doc-table doc-table-wide",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Champ":"Field"}),e.jsx("th",{children:r?"Ce que le pipeline SOURCING en fait":"What the SOURCING pipeline does with it"}),e.jsx("th",{children:r?"Ce que le pipeline QUALIFICATION en fait":"What the QUALIFICATION pipeline does with it"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"angle_id"})}
3201),e.jsx("td",{children:r?"Tague chaque candidat remonté avec lâangle quâil a matché au gate, pour que lâAirtable + les rapports en aval filtrent par angle.":"Tags every surfaced candidate with the angle it matched at the gate, so downstream Airtable + reports can filter per angle."}),e.jsx("td",{children:r?"Route le deal vers le slot dâangle correspondant dans le Module 0 et propage le tag à travers les Modules 1â5 et lâen-tête du mémo.":"Routes the deal into the matching angle slot in Module 0 and propagates the tag through Modules 1â5 and the memo header."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"angle_name"})}),e.jsx("td",{children:r?"Utilisé dans le rapport quotidien + les logs des moteurs pour étiqueter quel angle a produit chaque candidat.":"Used in the daily report + engine logs to label which angle produced each candidate."}),e.jsx("td",{children:r?"Imprimé dans le bloc verdict et le titre du mémo.":"Printed in the verdict block and the memo title."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"weight"})," â [1, 5]"]}),e.jsx("td",{children:r?"Les moteurs de pool (Exa Semantic, LinkedIn Posts) tirent les requêtes proportionnellement au poids ; les moteurs calendaires (LinkedIn Jobs, Crunchbase) sâactivent sur proportionnellement plus de semaines ISO.":"Pool engines (Exa Semantic, LinkedIn Posts) draw queries proportionally to weight; calendar engines (LinkedIn Jobs, Crunchbase) activate during proportionally more ISO weeks."}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Le Module 0 lâutilise pour classer les angles détectés quand un deal en matche plusieurs â un poids plus élevé départage pour ",e.jsx("code",{children:"primary_angle"}),"."]}):e.jsxs(e.Fragment,{children:["Module 0 uses it to rank detected angles when one deal matches several â higher weight breaks ties for ",e.jsx("code",{children:"primary_angle"}),"."]})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"match_signal"})," ",r?"(prose, 10â800 car.)":"(prose, 10â800 chars)"]}),e.jsx("td",{children:r?"Injecté tel quel dans la section MATCH CRITERIA du prompt du gate, un bloc par angle.":"Injected verbatim into the gate prompt's MATCH CRITERIA section, one block per angle."}),e.jsx("td",{children:r?"Le Module 0 le lit comme le critère du Signal 1 (adéquation du business model).":"Module 0 reads it as the Signal 1 criterion (business model match)."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"reject_signal"})," ",r?"(max 10 clauses à 8 mots)":"(max 10 clauses à 8 words)"]}),e.jsx("td",{children:r?"Injecté tel quel dans la section REJECT CRITERIA du prompt du gate.":"Injected verbatim into the gate prompt's REJECT CRITERIA section."}),e.jsx("td",{children:r?"Le Module 0 le lit comme la définition du PASS â confirme un hard-block avant que les analystes ne tournent.":"Module 0 reads it as the PASS definition â confirms a hard-block before the analysts run."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"sectors_plain"})," (max 12)"]}),e.jsx("td",{children:r?"Lâunion à lâéchelle du fonds de tous les angles pilote le filtrage par mots-clés dans Pappers FR, Google News, RSS, HN, GitHub, CRT.":"Fund-wide union of all angles drives keyword filtering in Pappers FR, Google News, RSS, HN, GitHub, CRT."}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Le Module 0 lit le ",e.jsx("code",{children:"sectors_plain"})," de lâangle comme la liste de vocabulaire du Signal 2."]}):e.jsxs(e.Fragment,{children:["Module 0 reads the angle's ",e.jsx("code",{children:"sectors_plain"})," as the Signal 2 vocabulary list."]})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"exa_queries"})," ",r?'(exactement 7, "Here is a ...")':'(exactly 7, "Here is a ...")']}),e.jsx("td",{children:r?"Entrée du moteur Exa Semantic â chaque phrase devient une recherche sémantique Exa.":"Exa Semantic engine input â each phrase becomes one Exa semantic search."}),e.jsx("td",{children:r?"Non lu.":"Not read."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"competitor_anchors"})," (min 10, max 20)"]}),e.jsx("td",{children:r?"Graines du moteur Exa Similar â Exa trouve des sosies de chaque anchor.":"Exa Similar engine seeds â Exa finds lookalikes of each anchor."}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Pas lu directement. Le ",e.jsx("code",{children:"gold_anchor"})," doit y figurer pour quâExa Similar fasse remonter des sociétés voisines."]}):e.jsxs(e.Fragment,{children:["Not read directly. The ",e.jsx("code",{children:"gold_anchor"})," must appear here so Exa Similar surfaces companies adjacent to it."]})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"google_alert_queries"})," (8â12)"]}
3201),e.jsx("td",{children:r?"Entrée du moteur Google Alerts â chaque requête devient un abonnement dâalerte.":"Google Alerts engine input â each query becomes one alert subscription."}),e.jsx("td",{children:r?"Non lu.":"Not read."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"apify_linkedin_posts_queries"})," ",r?"(exactement 4)":"(exactly 4)"]}),e.jsx("td",{children:r?"Entrée du moteur LinkedIn Posts â Apify scrape les posts correspondant à chaque requête.":"LinkedIn Posts engine input â Apify scrapes posts matching each query."}),e.jsx("td",{children:r?"Non lu.":"Not read."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"apify_linkedin_jobs_calendar"})," ",r?"(7 créneaux de la semaine)":"(7 weekday slots)"]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Le moteur LinkedIn Jobs choisit le créneau du jour ",e.jsxs("code",{children:["{","day, keywords, city","}"]})," et lance lâacteur Apify Jobs avec."]}):e.jsxs(e.Fragment,{children:["LinkedIn Jobs engine picks today's slot ",e.jsxs("code",{children:["{","day, keywords, city","}"]})," and runs the Apify Jobs actor with it."]})}),e.jsx("td",{children:r?"Non lu.":"Not read."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"apify_crunchbase_calendar"})," ",r?"(7 créneaux de la semaine)":"(7 weekday slots)"]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Le moteur Crunchbase choisit le créneau du jour ",e.jsxs("code",{children:["{","day, city, industry, employees","}"]}),"."]}):e.jsxs(e.Fragment,{children:["Crunchbase engine picks today's slot ",e.jsxs("code",{children:["{","day, city, industry, employees","}"]}),"."]})}),e.jsx("td",{children:r?"Non lu.":"Not read."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"posts_weekly"})," · ",e.jsx("code",{children:"anchors_weekly"})," · ",e.jsx("code",{children:"exa_queries_weekly"})," ",r?"(rotation v6)":"(v6 rotation)"]}),e.jsx("td",{children:r?"Le lookup de rotation quotidienne choisit lâentrée du jour ; remplace les tableaux plats ci-dessus quand elle est présente.":"Daily rotation lookup picks today's weekday entry; supersedes the flat arrays above when present."}),e.jsx("td",{children:r?"Non lu.":"Not read."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"priority_flags"})," ",r?"(4â9, ⤠40 car.)":"(4â9, ⤠40 chars)"]}),e.jsx("td",{children:r?"Non lu.":"Not read."}),e.jsx("td",{children:r?"Le Module 0 les lit dans le set de vocabulaire du Signal 2 ; les analystes Module 1A/1B/3 les traitent comme des patterns obligatoires à vérifier.":"Module 0 reads them as part of the Signal 2 vocabulary set; Module 1A/1B/3 analysts treat them as mandatory patterns to check."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"green_flags"})," ",r?"(8 initial â jusquâà 15, registre 7 champs)":"(8 initial â up to 15, 7-field registry)"]}),e.jsx("td",{children:r?"Non lu.":"Not read."}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Les analystes Module 1A/1B/3 évaluent implicitement chaque pattern contre les preuves de la société ; si observé, ",e.jsx("code",{children:"times_fired += 1"}),"."]}):e.jsxs(e.Fragment,{children:["Module 1A/1B/3 analysts implicitly evaluate each pattern against the company evidence; if observed, ",e.jsx("code",{children:"times_fired += 1"}),"."]})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"red_flags"})," ",r?"(4 initial â jusquâà 8, registre 7 champs)":"(4 initial â up to 8, 7-field registry)"]}),e.jsx("td",{children:r?"Non lu.":"Not read."}),e.jsx("td",{children:r?"Comme green_flags mais pour les anti-patterns â un déclenchement produit un constat négatif.":"Same as green_flags but for anti-patterns â firing triggers a negative finding."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"narrative_alpha.angles[id]"})," ",r?"(100â200 mots, 5 éléments)":"(100â200 words, 5 elements)"]}),e.jsx("td",{children:r?"Non lu.":"Not read."}),e.jsx("td",{children:r?"Le Module 0 le lit comme le critère du Signal 3 (adéquation du gap stratég
3201ique) ; les Modules 1â5 lâutilisent pour cadrer la Q&R spécifique à lâangle et le paragraphe dâadéquation à la thèse du verdict.":"Module 0 reads it as the Signal 3 criterion (strategic gap match); Module 1â5 use it to frame the angle-specific Q&A and the verdict's fit-to-thesis paragraph."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"narrative_alpha.buyer_context"})," ",r?"(100â200 mots)":"(100â200 words)"]}),e.jsx("td",{children:r?"Non lu.":"Not read."}),e.jsx("td",{children:r?"Le Module 0 lâutilise comme contexte de calibrage ; le Module 5 lâutilise pour cadrer la section profil-investisseur du verdict.":"Module 0 uses it as calibration context; Module 5 uses it to frame the investor-profile section of the verdict."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"gold_anchor"})," + ",e.jsx("code",{children:"gold_anchor_pool"})," ","(3 slots)"]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Influence le sourcing indirectement â ",e.jsx("code",{children:"gold_anchor"})," doit figurer dans ",e.jsx("code",{children:"competitor_anchors"}),", pour quâExa Similar fasse remonter des sociétés proches."]}):e.jsxs(e.Fragment,{children:["Influences sourcing indirectly â ",e.jsx("code",{children:"gold_anchor"})," must appear in ",e.jsx("code",{children:"competitor_anchors"}),", so Exa Similar surfaces companies near it."]})}),e.jsx("td",{children:r?"Apparaît tel quel dans le mémo comme benchmark positif ; pas lu directement par le Module 5 pour le verdict.":"Surfaces verbatim in the memo as a positive benchmark; not read directly by Module 5 for the verdict."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"poison_anchor"})," + ",e.jsx("code",{children:"poison_anchor_characteristics"})," (5â7)"]}),e.jsx("td",{children:r?"Non lu.":"Not read."}),e.jsx("td",{children:r?"Apparaît tel quel dans le mémo comme benchmark dâanti-pattern ; pas lu directement par le Module 5 pour le verdict.":"Surfaces verbatim in the memo as an anti-pattern benchmark; not read directly by Module 5 for the verdict."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"binary_gates.exclusions.*"})}),e.jsx("td",{children:r?"Pas appliqué au gate en v5.4 (indicatif seulement).":"Not enforced at the gate in v5.4 (advisory only)."}),e.jsx("td",{children:r?"Contrôle dâexclusion dure du Module 5 â si une exclusion est déclenchée, le verdict est forcé à PASS quels que soient les constats des analystes.":"Module 5 hard-exclusion check â if any exclusion is tripped, the verdict is forced to PASS regardless of the analysts' findings."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"binary_gates.inclusions.geography"})," (FROZEN)"]}),e.jsx("td",{children:r?"Pré-filtre géographique appliqué aux moteurs (ex. Pappers FR ne tourne que si FR est dans la liste).":"Geographic pre-filter applied to the engines (e.g. Pappers FR only runs if FR is in the list)."}),e.jsx("td",{children:r?"Non lu.":"Not read."})]})]})]})}),e.jsx("h4",{className:"doc-h4",children:r?"Références des étapes de lâassistant":"Wizard step references"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Lâassistant sur ",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"})," collecte ces champs en quatre étapes :"]}):e.jsxs(e.Fragment,{children:["The wizard at ",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"})," collects these fields in four steps:"]})}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Step 04 â Thesis Setup"})," : ",e.jsx("code",{children:"angle_id"}),", ",e.jsx("code",{children:"angle_name"}),", ",e.jsx("code",{children:"weight"}),", ",e.jsx("code",{children:"match_signal"}),", ",e.jsx("code",{children:"reject_signal"}),", ",e.jsx("code",{children:"narrative_alpha.buyer_context"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Step 05 â Sourcing Setup"})," : tous les champs par-angle requête / calendrier / anchor + ",e.jsx("code",{children:"sectors_plain"})," + ",e.jsx("code",{children:"competitor_anchors"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Step 06b â Qualification Setup"})," : ",e.jsx("code",{children:"narrative_alpha.angles[id]"}),", ",e.jsx("code",{children:"priority_flags"}),", ",e.jsx("code",{children:"green_flags"}),", ",e.jsx("code",{children:"red_flags"}),", ",e.jsx("code",{children:"gold_anchor"})," (+ pool slot[0] année + thesis_match), ",e.jsx("code",{children:"poison_anchor"}),", ",e.jsx("code",{children:"poison_anchor_characteristics"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Step 09 â Financial Model"})," : au niveau du fonds â ",e.jsx("code",{children:"mode"}),", ",e.jsx("code",{children:"sector_profile"}),", hurdles par mode, ",e.jsx("code",{children:"acquirer_context"}
3201)," (M&A stratégique uniquement)."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Step 04 â Thesis Setup"}),": ",e.jsx("code",{children:"angle_id"}),", ",e.jsx("code",{children:"angle_name"}),", ",e.jsx("code",{children:"weight"}),", ",e.jsx("code",{children:"match_signal"}),", ",e.jsx("code",{children:"reject_signal"}),", ",e.jsx("code",{children:"narrative_alpha.buyer_context"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Step 05 â Sourcing Setup"}),": all per-angle query / calendar / anchor fields + ",e.jsx("code",{children:"sectors_plain"})," + ",e.jsx("code",{children:"competitor_anchors"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Step 06b â Qualification Setup"}),": ",e.jsx("code",{children:"narrative_alpha.angles[id]"}),", ",e.jsx("code",{children:"priority_flags"}),", ",e.jsx("code",{children:"green_flags"}),", ",e.jsx("code",{children:"red_flags"}),", ",e.jsx("code",{children:"gold_anchor"})," (+ pool slot[0] year + thesis_match), ",e.jsx("code",{children:"poison_anchor"}),", ",e.jsx("code",{children:"poison_anchor_characteristics"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Step 09 â Financial Model"}),": fund-level â ",e.jsx("code",{children:"mode"}),", ",e.jsx("code",{children:"sector_profile"}),", hurdles per mode, ",e.jsx("code",{children:"acquirer_context"})," (M&A strategic only)."]})]})}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Qui écrit quoi â matrice dâorigine.":"Who writes what â origin matrix."}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"CEO uniquement (assistant, pas dâauto-mutation) :"})," ",e.jsx("code",{children:"angle_id"}),", ",e.jsx("code",{children:"angle_name"}),", ",e.jsx("code",{children:"weight"}),", ",e.jsx("code",{children:"apify_linkedin_jobs_calendar"}),", ",e.jsx("code",{children:"apify_crunchbase_calendar"}),", ",e.jsx("code",{children:"narrative_alpha.angles[id]"}),", ",e.jsx("code",{children:"narrative_alpha.buyer_context"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Le CEO fixe lâinitial, le moteur hebdo étend :"})," ",e.jsx("code",{children:"match_signal"}),", ",e.jsx("code",{children:"reject_signal"}),", ",e.jsx("code",{children:"exa_queries"}),", ",e.jsx("code",{children:"google_alert_queries"}),", ",e.jsx("code",{children:"apify_linkedin_posts_queries"}),", ",e.jsx("code",{children:"sectors_plain"}),", ",e.jsx("code",{children:"competitor_anchors"}),", ",e.jsx("code",{children:"priority_flags"}),", ",e.jsx("code",{children:"green_flags"}),", ",e.jsx("code",{children:"red_flags"}),", ",e.jsx("code",{children:"gold_anchor"})," / ",e.jsx("code",{children:"gold_anchor_pool"}),", ",e.jsx("code",{children:"poison_anchor"})," / ",e.jsx("code",{children:"poison_anchor_characteristics"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Stan uniquement (calendriers de rotation maintenus par le moteur hebdo) :"})," ",e.jsx("code",{children:"posts_weekly"}),", ",e.jsx("code",{children:"anchors_weekly"}),", ",e.jsx("code",{children:"exa_queries_weekly"}),"."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"CEO-only (wizard, no auto-mutation):"})," ",e.jsx("code",{children:"angle_id"}),", ",e.jsx("code",{children:"angle_name"}),", ",e.jsx("code",{children:"weight"}),", ",e.jsx("code",{children:"apify_linkedin_jobs_calendar"}),", ",e.jsx("code",{children:"apify_crunchbase_calendar"}),", ",e.jsx("code",{children:"narrative_alpha.angles[id]"}),", ",e.jsx("code",{children:"narrative_alpha.buyer_context"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"CEO sets initial, weekly engine extends:"})," ",e.jsx("code",{children:"match_signal"}),", ",e.jsx("code",{children:"reject_signal"}),", ",e.jsx("code",{children:"exa_queries"}),", ",e.jsx("code",{children:"google_alert_queries"}),", ",e.jsx("code",{children:"apify_linkedin_posts_queries"}),", ",e.jsx("code",{children:"sectors_plain"}),", ",e.jsx("code",{children:"competitor_anchors"}),", ",e.jsx("code",{children:"priority_flags"}),", ",e.jsx("code",{children:"green_flags"}),", ",e.jsx("code",{children:"red_flags"}),", ",e.jsx("code",{children:"gold_anchor"})," / ",e.jsx("code",{children:"gold_anchor_pool"}),", ",e.jsx("code",{children:"poison_anchor"})," / ",e.jsx("code",{children:"poison_anchor_characteristics"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Stan-only (rotation calendars maintained by the weekly engine):"})," ",e.jsx("code",{children:"posts_weekly"}),", ",e.jsx("code",{children:"anchors_weekly"}),", ",e.jsx("code",{children:"exa_queries_weekly"}),"."]})]})})]}),e.jsxs("div",{className:"callout success",children:[e.jsx("strong",{children:r?"Pour aller plus loin.":"Where to read more."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Pour les règles de mutation champ par champ (quel type de signal change quel champ à quel seuil), sautez à ",e.jsx("a",{href:"#s05-rules",children:"5.2.c â Règles de mutation par signal"}),". Pour la séquence complète des modules de qualification (jobs 1â3, modules 0â5, Avocat du Diable, Synergy Analyst), voir ",e.jsx("a",{href:"#s03-decision-modules",children:"Comment Stan décide"}),"."]}):e.jsxs(e.Fragment,{children:["For the field-by-field mutation rules (which signal type changes which field at which threshold), jump to ",e.jsx("a",{href:"#s05-rules",children:"5.2.c â Mutation rules per signal"}),". For the full qualification module sequence (jobs 1â3, modules 0â5, Devil's Advocate, Synergy Analyst), see ",e.jsx("a",{href:"#s03-decision-modules",children:"How Stan makes decisions"}),"."]})})]}),e.jsx("span",{id:"s01-json",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"1.3 Le JSON passe en production":"1.3 The JSON goes live"}),e.jsx("p",{className:"doc-text",children:r?e.jsx(e.Fragment,{children:"Une fois validé, le JSON de la Fund Thesis est déployé dans Airtable. Le sourcing démarre le lendemain matin. Chaque étape en aval â requêtes de sourcing, scoring de qualification, modèle financier, évolution hebdomadaire â lit ce fichier unique. Changez la thèse, tout sâadapte au run suivant."}):e.jsx(e.Fragment,{children:"Once validated, the Fund Thesis JSON deploys to Airtable. Sourcing starts the next morning. Every downstream step â sourcing queries, qualification scoring, financial model, weekly evolution â reads from this single file. Change the thesis, everything adapts on the next run."})}),e.jsx("pre",{className:"doc-code",children:`{ 3202 "version": "5.3", 3203 "fund_slug": "your-fund", 3204 "mode": "ma-strategic", 3205 "angles": [ 3206 { 3207 "id": "a1", 3208 "name": "Logistics SaaS · EU consolidation", 3209 "sectors": ["logistics", "supply-chain"], 3210 "geographies": ["FR", "DE", "BE", "NL"], 3211 "stages": ["seed", "series-a"], 3212 "exa_queries": ["..."], 3213 "competitor_anchors": ["shippeo.com", "freightos.com"], 3214 "hard_filters": { ... }, 3215 "narrative": "..." 3216 } 3217 ], 3218 "sourcing_config": { ... }, 3219 "financial_model_config": { ... }, 3220 "narrative_alpha": "..." 3221}`}),e.jsx(ss,{children:r?e.jsxs(e.Fragment,{children:["JSON de la Fund Thesis v5.4 â 8 clés de premier niveau. Stocké dans Airtable, éditable à tout moment par le CEO sur ",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"})," (validé Pydantic en direct)."]}):e.jsxs(e.Fragment,{children:["Fund Thesis JSON v5.4 â 8 top-level keys. Stored in Airtable, edited any time by the CEO on ",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"})," (Pydantic-validated live)."]})})]}),e.jsx(is,{step:ni[1]}),e.jsxs("section",{className:"doc-section",children:[e.jsx("span",{id:"s02-engines",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"2.1 Stan lit ce que personne dâautre ne voit â 17 moteurs (15 quotidiens + 2 à la demande)":"2.1 Stan reads what nobody else sees â 17 engines (15 daily + 2 on-demand)"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Le moteur quotidien est un endpoint Modal, ",e.jsx("code",{children:"POST https://alexandre-79537--sourcing-agent-web-v3.modal.run"}),", déclenché par le scénario Make.com ",e.jsx("code",{children:"4950251"})," (module 1, auth Bearer, timeout 300 s). Lâendpoint répond immédiatement avec ",e.jsx("code",{children:"status: started"})," et renvoie le rapport complet au webhook Make de façon asynchrone quand le balayage parallèle des moteurs se termine. Quinze moteurs tournent en parallèle dans ce seul appel, chacun calibré à vos angles de thè
3221se, chacun lisant un type de signal différent. ",e.jsx("strong",{children:"Exa Websets"})," est lâun des 15 : il se déclenche en async avec les 14 autres et rejoint les résultats quand les candidats « vérification dâabord » arrivent. Les moteurs de pool (Exa Semantic, LinkedIn Posts) tournent proportionnellement au poids ; les moteurs calendaires (LinkedIn Jobs, Crunchbase Search) activent un créneau par jour et par angle ; les moteurs always-on (Google News, Google Alerts, RSS, Pappers FR, CRT, GitHub, HN, Fundraising, Backfill) scannent tous les secteurs à lâéchelle du fonds chaque matin. Lâactivation/désactivation dâun moteur est lue en direct dans la table Airtable ",e.jsx("code",{children:"engine_config"}),"."]}):e.jsxs(e.Fragment,{children:["The daily engine is a Modal endpoint, ",e.jsx("code",{children:"POST https://alexandre-79537--sourcing-agent-web-v3.modal.run"}),", kicked off by Make.com scenario ",e.jsx("code",{children:"4950251"})," (module 1, Bearer auth, 300 s timeout). The endpoint returns immediately with ",e.jsx("code",{children:"status: started"})," and posts the full report back to the Make webhook asynchronously when the parallel engine sweep finishes. Fifteen engines run in parallel inside that single call, each calibrated to your thesis angles, each reading a different signal type. ",e.jsx("strong",{children:"Exa Websets"})," is one of the 15: it fires async alongside the other 14 and joins the results when the verification-first candidates land. Pool engines (Exa Semantic, LinkedIn Posts) rotate weight-proportionally; calendar engines (LinkedIn Jobs, Crunchbase Search) activate one slot per day per angle; always-on engines (Google News, Google Alerts, RSS, Pappers FR, CRT, GitHub, HN, Fundraising, Backfill) scan all sectors fund-wide every morning. Engine on/off is read live from the Airtable ",e.jsx("code",{children:"engine_config"})," table."]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Deux ",e.jsx("strong",{children:"moteurs à la demande"})," supplémentaires ne sont pas dans le pipeline quotidien â ils vivent derrière leurs propres routes Modal déclenchées depuis le dashboard analyste : ",e.jsx("strong",{children:"Manual Paste"})," évalue nâimporte quelle URL ou nom de société contre le gate du fonds actif (mis en cache pour que les doublons reviennent instantanément), et ",e.jsx("strong",{children:"Find Similar to Qualified"})," prend nâimporte quelle société CALL/CONSIDER/MONITOR/MATCH du portefeuille et lance une recherche de similarité Exa pour faire remonter 5 nouveaux candidats évalués. Même gate, même stockage Airtable que les moteurs quotidiens â ils apparaissent dans les mêmes rapports."]}):e.jsxs(e.Fragment,{children:["Two additional ",e.jsx("strong",{children:"on-demand engines"})," are not in the daily pipeline â they live behind their own Modal routes triggered from the analyst dashboard: ",e.jsx("strong",{children:"Manual Paste"})," evaluates any company URL or name against the active fund's gate (cached so duplicates return instantly), and ",e.jsx("strong",{children:"Find Similar to Qualified"})," takes any CALL/CONSIDER/MONITOR/MATCH company in the portfolio and runs Exa similarity search to surface 5 fresh evaluated candidates. Same gate, same Airtable storage as the daily engines â they show up in the same reports."]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Ce que le callback async renvoie à Make : ",e.jsx("code",{children:"status"})," (success / error), ",e.jsx("code",{children:"leads_count"}),", ",e.jsx("code",{children:"email_html"})," (rapport HTML compact, < 200 Ko), ",e.jsx("code",{children:"full_logs"})," (tronqué à 500 Ko si plus gros), ",e.jsx("code",{children:"morning_publish"})," (statut de la publication du rapport quotidien). Le champ ",e.jsx("code",{children:"email_html"})," est ce qui alimente le pipeline daily-email ; ",e.jsx("code",{children:"full_logs"})," est archivé ; ",e.jsx("code",{children:"leads_count"})," pilote le branchement succès / erreur de Make."]}):e.jsxs(e.Fragment,{children:["What the async callback carries back to Make: ",e.jsx("code",{children:"status"})," (success / error), ",e.jsx("code",{children:"leads_count"}),", ",e.jsx("code",{children:"email_html"})," (compact HTML report, < 200 KB), ",e.jsx("code",{children:"full_logs"})," (truncated to 500 KB if larger), ",e.jsx("code",{children:"morning_publish"})," (status of the daily report publish). The ",e.jsx("code",{children:"email_html"})," field is what feeds the daily-email pipeline; ",e.jsx("code",{children:"full_logs"})," is archived; ",e.jsx("code",{children:"leads_count"})," drives Make's success / error branching."]})}),e.jsx("div",{className:"engine-list",children:A5.map(l=>{const d=r?D5(l):l;return e.jsxs("div",{className:"engine",children:[e.jsx("span",{className:"engine-emoji",children:l.emoji}),e.jsxs("div",{children:[e.jsx("div",{className:"engine-name",children:d.name}),e.jsx("div",{className:"engine-detail",children:d.detail})]})]},l.name)})}),e.jsx("span",{id:"s02-filter",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"2.2 Stan filtre sans pitié â votre thèse, vos lignes rouges":"2.2 Stan filters ruthlessly â your thesis, your hard stops"}),e.jsx("p",{className:"doc-text",children:r?e.jsx(e.Fragment,{children:"Chaque candidat passe un gate strict unique â calibré à votre Fund Thesis, pas un filtre générique. Mauvaise géographie, mauvais stade, mauvais modèle : rejet instantané. Pas de temps perdu sur le bruit."}):e.jsx(e.Fragment,{children:"Every candidate passes a single str
3221ict gate â calibrated to your Fund Thesis, not a generic filter. Wrong geography, wrong stage, wrong model: instant rejection. No time wasted on noise."})}),e.jsxs("div",{className:"callout success",children:[e.jsx("strong",{children:r?"Un seul passage, pas dâagrégation.":"One pass, no aggregation."}),e.jsx("p",{children:r?"Le gate tourne par-candidat et par-angle. Une cible rejetée par lâAngle 1 peut tout de même matcher lâAngle 3.":"The gate runs per-candidate per-angle. A target rejected by Angle 1 may still match Angle 3."})]}),e.jsx("span",{id:"s02-dashboard",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"2.3 Les matchs arrivent dans votre dashboard":"2.3 Matches land in your dashboard"}),e.jsx("p",{className:"doc-text",children:r?e.jsx(e.Fragment,{children:"Chaque MATCH est évalué contre vos angles de thèse et arrive dans votre Sourcing Dashboard â filtrable par secteur, géographie, type de signal et date. Les matchs validés alimentent immédiatement le moteur de qualification. Sourcé le matin, qualifié pour 16h."}):e.jsx(e.Fragment,{children:"Every MATCH is evaluated against your thesis angles and lands in your Sourcing Dashboard â filterable by sector, geography, signal type, and date. Validated matches immediately feed the qualification engine. Sourced in the morning, qualified by 4 PM."})}),e.jsx(ss,{children:r?"Sourcing Dashboard â tous les matchs, filtrables par angle, secteur, géographie et type de signal. Mis à jour quotidiennement.":"Sourcing Dashboard â all matches, filterable by angle, sector, geography, and signal type. Updated daily."})]}),e.jsx(is,{step:ni[2]}),e.jsxs("section",{className:"doc-section",children:[e.jsx("span",{id:"s03-memo",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"Stan rédige le mémo â Automatique · 0 min":"Stan writes the memo â Automatic · 0 min"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Chaque MATCH déclenche un mémo dâinvestissement complet calibré à votre thèse. Le mémo est assemblé par lâendpoint Modal ",e.jsx("code",{children:"POST /build-memo"})," (dans ",e.jsx("code",{children:"modal_app.py"}),") â orchestré par Make BP2 (scénario ",e.jsx("code",{children:"3869328"}),", module ",e.jsx("code",{children:"1752"}),"). Le modèle financier (P&L sur 5 ans, unit economics, matrices de sensibilité, cap table) est construit par un endpoint séparé ",e.jsx("code",{children:"/build-model"})," (module 1687) et ses 18 tableaux HTML pré-rendus sont transmis à /build-memo pour injection telle quelle. Le classeur Excel est aussi un sous-produit de /build-model â exposé dans le mémo via le bouton « ð¥ Download Interactive Excel Model »."]}):e.jsxs(e.Fragment,{children:["Every MATCH triggers a full investment memo calibrated to your thesis. The memo is assembled by the Modal endpoint ",e.jsx("code",{children:"POST /build-memo"})," (in ",e.jsx("code",{children:"modal_app.py"}),") â orchestrated by Make BP2 (scenario ",e.jsx("code",{children:"3869328"}),", module ",e.jsx("code",{children:"1752"}),"). The financial model (P&L 5-year, unit economics, sensitivity matrices, cap table) is built by a separate endpoint ",e.jsx("code",{children:"/build-model"}),' (module 1687) and its 18 pre-rendered HTML tables are forwarded into /build-memo for verbatim injection. The Excel workbook is also a byproduct of /build-model â exposed in the memo via the "ð¥ Download Interactive Excel Model" button.']})}),e.jsx("h4",{className:"doc-h4",children:r?"Ce que /build-memo fait réellement":"What /build-memo actually does"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Accepte à la fois du JSON et du form-data multipart (Make utilise le form-data car il échappe automatiquement la sortie LLM multi-lignes, supprimant le besoin dâéchapper le JSON à la main). Le payload porte : ",e.jsx("strong",{children:"8 Parts générées par LLM"})," + ",e.jsx("strong",{children:"18 tableaux HTML financiers"})," (depuis /build-model) + plusieurs ",e.jsx("strong",{children:"champs de données brutes"})," qui contournent le LLM et sont rendus côté serveur. Ensuite :"]}):e.jsxs(e.Fragment,{children:["Accepts both JSON and multipart form-data (Make uses form-data because it auto-escapes multi-line LLM output, removing the need to JSON-escape manually). The payload carries: ",e.jsx("strong",{children:"8 LLM-generated Parts"})," + ",e.jsx("strong",{children:"18 financial HTML tables"})," (from /build-model) + several ",e.jsx("strong",{children:"raw data fields"})," that bypass the LLM and render server-side. Then:"]})}),e.jsx("ol",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Assainit chaque Part"})," via ",e.jsx("code",{children:"_sanitize_part()"})," : valide lâéquilibre des balises HTML, retire les ",e.jsx("code",{children:"</body>"})," / ",e.jsx("code",{children:"</html>"})," / ",e.jsx("code",{children:"</div>"})," parasites, consigne chaque correction dans le log ",e.jsx("code",{children:"changes"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Rend la Part 2 (Value Chain) côté serveur"})," quand le JSON ",e.jsx("code",{children:"value_chain_data_raw"})," est fourni â court-circuite entièrement la Part 2 du LLM, supprime le mode dâéchec acteur-perdu / colonne-orpheline. Retombe sur la Part 2 du LLM en cas dâerreur de parsing."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Découpe la Part 6 (bloc financier)"})," sur les marqueurs ",e.jsx("code",{children:"<!-- SPLIT_ROI -->"})," et ",e.jsx("code",{children:"<!-- SPLIT_CAP -->"})," émis par le module 1702, enveloppe chaque bloc interne dans ",e.jsx("code",{children:'<div class="section-container" id="financial-forecast | roi-analysis | cap-table">'})," avec le ",e.jsx("code",{children:'<h2 class="section-title">'})," traduit. Les marqueurs manquants se dégradent proprement (avertissement émis)."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Normalise les alias de placeholder"})," que le LLM tronque parfois (ex. ",e.jsx("code",{children:"[[[REPLACE_WITH_ASS_HTML]]]"})," â ",e.jsx("code",{children:"[[[REPLACE_WITH_ASSUMPTIONS_HTML]]]"}),")."]}),e.jsxs("li",{children:[e.jsxs("strong",{children:["Substitue chaque ",e.jsx("code",{children:"[[[REPLACE_WITH_*_HTML]]]"})]})," par le tableau correspondant du form-data. 18 placeholders à 18 tableaux."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Enveloppe tout placeholder orphelin"})," (un token inconnu inventé par le LLM) dans un encart jaune « â Tableau attendu non injecté (","{","orphan","}","). Voir l'Excel pour le détail. » â le CEO voit le manque plutôt quâune chaîne de placeholder littérale."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Injecte des sections telles quelles depuis les champs bruts"})," quand fournis : ",e.jsx("code",{children:"gp_comment_raw"})," remplace la section Conviction ; ",e.jsx("code",{children:"synergy_data_raw"})," re-rend le Synergies Deep Dive côté serveur (les LLM tronquent au-delà de 3 items) ; ",e.jsx("code",{children:"profund_quick_analysis_claude_raw / *_2_raw / profund_full_analysis_claude_raw"})," remplacent les blocs Company / Market Summary ; les chaînes brutes ",e.jsx("code",{children:"value_prop_raw / product_raw / pricing_raw / team_raw / ceo_raw / swot_*_raw / defense_raw / offense_raw / kill_shot_raw / remediation_raw / fund_thesis_suggestion_raw"})," pilotent le Company Deep Dive, le SWOT, le plan dâaction et lâExternal Growth Strategy."]}),e.jsxs("li",{children:[e.jsxs("strong",{children:["Retire les sections gatées selon ",e.jsx("code",{children:"memo_type"})]})," (fast / quick / detailed)."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Publie"})," sur GitHub (repo ",e.jsx("code",{children:"proplace-co/wargame"}),", fichier ",e.jsxs("code",{children:["{","slug","}","-v2.html"]}),", servi sur ",e.jsxs("code",{children:["https://analysis.proplace.co/","{","slug","}","-v2"]}),") et synchronise le verdict vers Airtable via ",e.jsx("code",{children:"_sync_status_profund_from_html()"}),"."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Sanitises every Part"})," via ",e.jsx("code",{children:"_sanitize_part()"}),": validates HTML tag balance, strips stray ",e.jsx("code",{children:"</body>"})," / ",e.jsx("code",{children:"</html>"})," / extra ",e.jsx("code",{children:"</div>"}),", records every fix in the ",e.jsx("code",{children:"changes"})," log."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Server-renders Part 2 (Value Chain)"})," when ",e.jsx("code",{children:"value_chain_data_raw"})," JSON is supplied â bypasses the LLM Part 2 entirely, kills the dropped-actor / orphan-column failure mode. Falls back to the LLM Part 2 on parse error."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Splits Part 6 (financial block)"})," on ",e.jsx("code",{children:"<!-- SPLIT_ROI -->"})," and ",e.jsx("code",{children:"<!-- SPLIT_CAP -->"})," markers emitted by module 1702, wraps each inner block in ",e.jsx("code",{children:'<div class="section-container" id="financial-forecast | roi-analysis | cap-table">'})," with the translated ",e.jsx("code",{children:'<h2 class="section-title">'}),". Missing markers degrade gracefully (warning emitted)."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Normalises placeholder aliases"})," the LLM occasionally truncates (e.g. ",e.jsx("code",{children:"[[[REPLACE_WITH_ASS_HTML]]]"})," â ",e.jsx("code",{children:"[[[REPLACE_WITH_ASSUMPTIONS_HTML]]]"}),")."]}),e.jsxs("li",{children:[e.jsxs("strong",{children:["Substitutes every ",e.jsx("code",{children:"[[[REPLACE_WITH_*_HTML]]]"})]})," with the corresponding table from the form-data. 18 placeholders à 18 tables."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Wraps any orphan placeholder"}),' (an unknown token the LLM invented) in a yellow "â Tableau attendu non injecté (',"{","orphan","}",`). Voir l'Excel pour le détail." notice â the CEO sees the gap instead of a literal placeholder string.`]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Inject verbatim sections from raw fields"})," when provided: ",e.jsx("code",{children:"gp_comment_raw"})," swaps the Conviction section; ",e.jsx("code",{children:"synergy_data_raw"})," re-renders the Synergies Deep Dive server-side (LLMs truncate past 3 items); ",e.jsx("code",{children:"profund_quick_analysis_claude_raw / *_2_raw / profund_full_analysis_claude_raw"})," swap the Company / Market Summary blocks; the ",e.jsx("code",{children:"value_prop_raw / product_raw / pricing_raw / team_raw / ceo_raw / swot_*_raw / defense_raw / offense_raw / kill_shot_raw / remediation_raw / fund_thesis_suggestion_raw"})," raw strings drive the Company Deep Dive, SWOT, Action Plan and External Growth Strategy."]}),e.jsxs("li",{children:[e.jsxs("strong",{children:["Strips gated sections per ",e.jsx("code",{children:"memo_type"})]})," (fast / quick / detailed)."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Publishes"})," to GitHub (",e.jsx("code",{children:"proplace-co/wargame"})," repo, file ",e.jsxs("code",{children:["{","slug","}","-v2.html"]}),", served at ",e.jsxs("code",{children:["https://analysis.proplace.co/","{","slug","}","-v2"]}),") and syncs the verdict back to Airtable via ",e.jsx("code",{children:"_sync_status_profund_from_html()"}),"."]})]})}),e.jsx("h4",{className:"doc-h4",children:r?"Les 8 Parts narratives â chacune produite par un module LLM BP2 distinct":"The 8 narrative Parts â each produced by a separate BP2 LLM module"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Part"}),e.jsx("th",{children:r?"Module Make (modèle)":"Make module (model)"}),e.jsx("th",{children:r?"Ce quâelle rend":"What it renders"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"part_1"})}),e.jsxs("td",{children:["1306 · ",e.jsx("code",{children:"google/gemini-2.5-flash"})]}),e.jsx("td",{children:r?"Nav de la sidebar, badge dâen-tête, résumé du verdict, Market Sizing (TAM/SAM/SOM).":"Sidebar nav, header badge, verdict summary, Market Sizing (TAM/SAM/SOM)."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"part_2"})}),e.jsxs("td",{children:["1308 · ",e.jsx("code",{children:"google/gemini-2.5-flash"})," ",r?e.jsxs(e.Fragment,{children:["(rendable côté serveur quand ",e.jsx("code",{children:"value_chain_data_raw"})," est fourni)"]}):e.jsxs(e.Fragment,{children:["(server-renderable when ",e.jsx("code",{children:"value_chain_data_raw"})," is supplied)"]})]}),e.jsx("td",{children:r?"Market Summary + Value Chain sur 6 étapes avec cartes dâacteurs.":"Market Summary + Value Chain across 6 stages with actor cards."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"part_3a"})}),e.jsx("td",{children:r?"suite de la chaîne 1308":"continuation of 1308 chain"}),e.jsx("td",{children:r?"Suite Market + intro Competition.":"Market continuation + Competition intro."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"part_3b"})}),e.jsxs("td",{children:["1653 · ",e.jsx("code",{children:"google/gemini-2.5-flash"})]}),e.jsx("td",{children:r?"Competition Magic Quadrant, M&
3221A Quadrant, scénarios stratégiques.":"Competition Magic Quadrant, M&A Quadrant, strategic scenarios."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"part_4"})}),e.jsxs("td",{children:["1314 · ",e.jsx("code",{children:"google/gemini-2.5-flash"})]}),e.jsx("td",{children:r?"Company Deep Dive, SWOT, plan dâaction, synergies custom.":"Company Deep Dive, SWOT, Action Plan, custom synergies."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"part_5"})}),e.jsxs("td",{children:["1316 · ",e.jsx("code",{children:"google/gemini-2.5-flash"})]}),e.jsx("td",{children:r?"Suite (mémos longs) + intro du modèle financier.":"Continuation (long memos) + Financial Model intro."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"part_6"})}),e.jsxs("td",{children:["1702 · ",e.jsx("code",{children:"google/gemini-2.5-flash"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Financial Forecast / ROI Analysis / Cap Table â 3 blocs de contenu internes séparés par ",e.jsx("code",{children:"<!-- SPLIT_ROI -->"})," et ",e.jsx("code",{children:"<!-- SPLIT_CAP -->"}),", chacun portant les placeholders ",e.jsx("code",{children:"[[[REPLACE_WITH_*_HTML]]]"})," pour les 18 tableaux financiers."]}):e.jsxs(e.Fragment,{children:["Financial Forecast / ROI Analysis / Cap Table â 3 inner content blocks separated by ",e.jsx("code",{children:"<!-- SPLIT_ROI -->"})," and ",e.jsx("code",{children:"<!-- SPLIT_CAP -->"}),", each carrying the ",e.jsx("code",{children:"[[[REPLACE_WITH_*_HTML]]]"})," placeholders for the 18 financial tables."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"part_9"})}),e.jsxs("td",{children:["1703 · ",e.jsx("code",{children:"google/gemini-2.5-flash"})]}),e.jsx("td",{children:r?"Sources, citations inline, clôture du mémo.":"Sources, inline citations, memo closing."})]})]})]}),e.jsxs("div",{className:"memo-grid",children:[e.jsxs("div",{className:"memo-col",children:[e.jsx("div",{className:"memo-h",children:r?"Marché":"Market"}),e.jsxs("ul",{className:"doc-list",children:[e.jsx("li",{children:"Market Sizing (TAM/SAM/SOM)"}),e.jsx("li",{children:r?"Value Chain & acteurs (6 étapes)":"Value Chain & Players (6 stages)"}),e.jsx("li",{children:"Competition Magic Quadrant"}),e.jsx("li",{children:r?"M&A Quadrant & scénarios":"M&A Quadrant & Scenarios"}),e.jsx("li",{children:r?"Scénarios stratégiques & synergies":"Strategic Scenarios & Synergies"})]})]}),e.jsxs("div",{className:"memo-col",children:[e.jsx("div",{className:"memo-h",children:r?"Société":"Company"}),e.jsxs("ul",{className:"doc-list",children:[e.jsx("li",{children:r?"Proposition de valeur & produit":"Value Proposition & Product"}),e.jsx("li",{children:"Business Model"}),e.jsx("li",{children:r?"Ãquipe & profil du CEO":"Team & CEO Profile"}),e.jsx("li",{children:r?"Analyse SWOT":"SWOT Analysis"}),e.jsx("li",{children:r?"Plan dâaction":"Action Plan"})]})]}),e.jsxs("div",{className:"memo-col",children:[e.jsx("div",{className:"memo-h",children:"Synergies"}),e.jsx("ul",{className:"doc-list",children:e.jsx("li",{children:r?e.jsxs(e.Fragment,{children:["Synergies chiffrées vs votre portefeuille (rendues côté serveur depuis ",e.jsx("code",{children:"synergy_data_raw"}),")"]}):e.jsxs(e.Fragment,{children:["Quantified synergies vs your portfolio (server-rendered from ",e.jsx("code",{children:"synergy_data_raw"}),")"]})})})]}),e.jsxs("div",{className:"memo-col",children:[e.jsx("div",{className:"memo-h",children:r?"Financier & verdict":"Financial & Verdict"}),e.jsxs("ul",{className:"doc-list",children:[e.jsx("li",{children:r?e.jsxs(e.Fragment,{children:["Conviction finale (injectée côté serveur depuis ",e.jsx("code",{children:"gp_comment_raw"}),")"]}):e.jsxs(e.Fragment,{children:["Final Conviction (server-injected from ",e.jsx("code",{children:"gp_comment_raw"}),")"]})}),e.jsx("li",{children:r?"Financial Forecast (P&L 5 ans, cash flow)":"Financial Forecast (5y P&L, cash flow)"}),e.jsx("li",{children:"ROI Analysis (IRR · MOIC)"}),e.jsx("li",{children:r?"Bouton de téléchargement Excel":"Excel download button"}),e.jsx("li",{children:"Sources"})]})]})]}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Analyse en un clic.":"One-click analysis."}),e.jsx("p",{children:r?"Collez nâimporte quelle URL ou nom de société. Stan exécute exactement la même chaîne /build-model + /build-memo contre votre Fund Thesis à la demande â hors du flux automatisé, en quelques minutes.":"Paste any URL or company name. Stan runs the exact same /build-model + /build-memo chain against your Fund Thesis on demand â outside the automated flow, in minutes."})]}),e.jsx("span",{id:"s03-directives",className:"doc-anchor"}),e.jsxs("h3",{className:"doc-h3",children:[r?"Pipeline du mémo (D01âD09)":"Memo pipeline (D01âD09)"," ",e.jsx("span",{className:"doc-tag",children:"MAKE PROMPT ZONE"})]}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Le mémo est généré par 9 parties de directive séquentielles (D01âD09) tournant dans Make. Chaque partie a un rôle spécifique ; le type de mémo (",e.jsx("code",{children:"fast"})," / ",e.jsx("code",{children:"quick"})," / ",e.jsx("code",{children:"detailed"}),") décide quels blocs sâaffichent conditionnellement."]}):e.jsxs(e.Fragment,{children:["The memo is generated by 9 sequential directive parts (D01âD09) running in Make. Each part has a specific role; the memo type (",e.jsx("code",{children:"fast"})," / ",e.jsx("code",{children:"quick"})," / ",e.jsx("code",{children:"detailed"}),") decides which blocks render conditionally."]})}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Directive"}),e.jsx("th",{children:r?"Rôle":"Role"}),e.jsx("th",{children:r?"Sortie":"Output"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"D01"})}),e.jsx("td",{children:r?"Extraction de données telle quelle (TOTAL RECALL)":"Verbatim data extraction (TOTAL RECALL)"}),e.jsx("td",{children:r?"Schéma JSON : meta, marché, value chain, competition, scénarios, synergies, société":"JSON schema: meta, market, value chain, competition, scenarios, synergies, company"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"D02"})}),e.jsx("td",{children:r?"Générateur HTML partie 1 â Sidebar & en-tête + Mar
3221ket Sizing":"HTML generator part 1 â Sidebar & Header + Market Sizing"}),e.jsx("td",{children:r?"En-tête HTML, nav de la sidebar, badge de verdict, bloc market sizing":"HTML head, sidebar nav, verdict badge, market sizing block"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"D03"})}),e.jsx("td",{children:r?"Market Summary & Value Chain (6 étapes S1âS6)":"Market Summary & Value Chain (6 stages S1âS6)"}),e.jsx("td",{children:r?"Section marché HTML + cartes dâacteurs sur la value chain":"HTML market section + actor cards across value chain"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"D04"})}),e.jsx("td",{children:r?"Competition, scénarios & synergies":"Competition, Scenarios & Synergies"}),e.jsx("td",{children:r?"Magic quadrant HTML, M&A quadrant, scénarios stratégiques":"HTML magic quadrant, M&A quadrant, strategic scenarios"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"D05"})}),e.jsx("td",{children:r?"Company Summary, SWOT, plan dâaction, synergies custom, sortie du modèle financier":"Company Summary, SWOT, Action Plan, Custom Synergies, Financial Model output"}),e.jsx("td",{children:r?"Section société HTML + grille SWOT + plan dâaction 100 jours":"HTML company section + SWOT grid + 100-day action plan"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"D06"})}),e.jsx("td",{children:r?"Suite de D05 (mémos longs)":"Continuation of D05 (long memos)"}),e.jsx("td",{children:r?"Suite HTML":"HTML continuation"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"D07"})}),e.jsx("td",{children:r?"Prévision financière â 10 blocs":"Financial forecast â 10 blocks"}),e.jsx("td",{children:"P&L, cash flow, unit economics, returns"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"D08"})}),e.jsx("td",{children:r?"Analyse de ROI":"ROI analysis"}),e.jsx("td",{children:r?"IRR · MOIC · matrice de sensibilité":"IRR · MOIC · sensitivity matrix"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"D09"})}),e.jsx("td",{children:r?"Sources & pied de page":"Sources & footer"}),e.jsx("td",{children:r?"Citations inline, liste des sources":"Inline citations, source list"})]})]})]}),e.jsx("span",{id:"s03-financial",className:"doc-anchor"}),e.jsxs("h3",{className:"doc-h3",children:[r?"Modèle financier â Directive 07 · sensible à la thèse":"Financial model â Directive 07 · Thesis-aware"," ",e.jsx("span",{className:"doc-tag",children:"MAKE PROMPT ZONE"})]}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["La Directive 07 est le modèle financier sensible à la thèse. Ce nâest PAS un tableur générique. Câest un endpoint Modal Python, ",e.jsx("code",{children:"POST /build-model"}),", invoqué depuis Make.com BP2 (scénario 3869328) par le module ",e.jsx("strong",{children:"1687"})," à ",e.jsx("code",{children:"https://alexandre-79537--sourcing-agent-fastapi-app.modal.run/build-model"})," avec un timeout de 300 s et auth Bearer. Le payload est construit en amont par les modules ",e.jsx("strong",{children:"1656 â 1693 â 1707"}),". Lâendpoint applique des formules déterministes par mode (VC / LBO / M&A stratégique) et retourne un ",e.jsx("code",{children:"post_verdict"})," qui ",e.jsx("strong",{children:"confirme, nuance, challenge ou invalide"})," le verdict qualitatif du GP Synthétique. Il ne rend pas le CALL/PASS adressé au CEO â il le stress-teste."]}):e.jsxs(e.Fragment,{children:["Directive 07 is the thesis-aware financial model. It is NOT a generic spreadsheet. It is a Modal Python endpoint, ",e.jsx("code",{children:"POST /build-model"}),", invoked from Make.com BP2 (scenario 3869328) by module ",e.jsx("strong",{children:"1687"})," at ",e.jsx("code",{children:"https://alexandre-79537--sourcing-agent-fastapi-app.modal.run/build-model"})," with a 300 s timeout and Bearer auth. The payload is built upstream by modules ",e.jsx("strong",{children:"1656 â 1693 â 1707"}),". The endpoint applies deterministic formulas per mode (VC / LBO / M&A Strategic) and returns a ",e.jsx("code",{children:"post_verdict"})," that either ",e.jsx("strong",{children:"confirms, nuances, challenges or invalidates"})," the qualitative verdict from the GP Synthetique. It does not render the CEO-facing CALL/PASS â it stress-tests it."]})}),e.jsx("h4",{className:"doc-h4",children:r?"Chaîne dâappels â Make 1656 â 1693 â 1707 â 1687 â 1702 â 1752":"Call chain â Make 1656 â 1693 â 1707 â 1687 â 1702 â 1752"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Module"}),e.jsx("th",{children:r?"Rôle":"Role"}),e.jsx("th",{children:r?"Sortie":"Output"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"1656"})," · OpenRouter ",e.jsx("code",{children:"x-ai/grok-4.3"})," (json_mode, temperature 1, fallback on)"]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Financial Signal Extractor."})," Lit la prose qualitative accumulée en amont (pitch deck, site web, business model, page pricing, équipe, news, analyse profund) et produit un JSON structuré de signaux numériques sous une discipline stricte ",e.jsx("strong",{children:"source-ou-null"})," : chaque champ numérique doit citer une citation telle quelle dans un champ ",e.jsx("code",{children:"_source"}
3221)," apparié, ou être null. Interdit dâinventer, estimer, calculer ou extrapoler des nombres absents de lâentrée."]}):e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Financial Signal Extractor."})," Reads the qualitative prose accumulated upstream (pitch deck, website, business model, pricing page, team, news, profund analysis) and produces a structured JSON of numeric signals under a strict ",e.jsx("strong",{children:"source-or-null"})," discipline: every numeric field must cite a verbatim quote in a paired ",e.jsx("code",{children:"_source"})," field, or be null. Forbids inventing, estimating, computing or extrapolating numbers absent from the input."]})}),e.jsxs("td",{children:[e.jsx("code",{children:"arr_triangulation_eur"})," + method â ","{"," ",e.jsx("code",{children:"pitch_deck_direct"})," · ",e.jsx("code",{children:"public_revenue_filing"})," · ",e.jsx("code",{children:"news_revenue_quote"})," · ",e.jsx("code",{children:"pricing_x_customers"})," · ",e.jsx("code",{children:"funding_implied"})," · ",e.jsx("code",{children:"no_source_available"})," ","}",", ",e.jsx("code",{children:"pricing_plan_low/high_eur_mo"}),", ",e.jsx("code",{children:"customer_count_estimate"}),", ",e.jsx("code",{children:"latest_valuation_eur"})," + ",e.jsx("code",{children:"last_funding_date"}),", ",e.jsx("code",{children:"arr_from_pitch"}),", ",e.jsx("code",{children:"annual_churn_estimate_pct"}),", ",e.jsx("code",{children:"nrr_estimate_pct"}),", ",e.jsx("code",{children:"logo_retention_pct"}),", ",e.jsx("code",{children:"revenue_growth_estimate_pct"}),", ",e.jsx("code",{children:"gross_margin_estimate_pct"}),", ",e.jsx("code",{children:"headcount_from_web"}),", ",e.jsx("code",{children:"opex_efficiency_signal"}),", green-flag ",e.jsx("code",{children:"signals[]"}),", and a ",e.jsx("code",{children:"synergy_signals"})," block (cross_sell_pct, upsell_pct, infra_saving_pct, ga_saving_pct, rd_sharing_pct, geo_expansion_arr)."]})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"1693"})," · ",e.jsx("code",{children:"json:ParseJSON"})]}),e.jsx("td",{children:r?"Parse la chaîne JSON de 1656 pour que ses champs soient adressables comme variables en aval.":"Parses 1656's JSON string so its fields are addressable as variables downstream."}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Même forme que 1656, désormais utilisable comme ",e.jsxs("code",{children:["{{","1693.arr_triangulation_eur","}}"]}),", etc."]}):e.jsxs(e.Fragment,{children:["Same shape as 1656, now usable as ",e.jsxs("code",{children:["{{","1693.arr_triangulation_eur","}}"]}),", etc."]})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"1707"})," · ",e.jsx("code",{children:"json:CreateJSON"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Assemble le corps de la requête ",e.jsx("code",{children:"/build-model"}),"."]}):e.jsxs(e.Fragment,{children:["Assembles the body of the ",e.jsx("code",{children:"/build-model"})," request."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Six clés de premier niveau : ",e.jsx("code",{children:"memo"})," (fast · quick · detailed), ",e.jsx("code",{children:"company"})," ","{"," name, sector, ",e.jsx("code",{children:"raw_signals"}),", ",e.jsx("code",{children:"structured_signals"})," ","}",", ",e.jsx("code",{children:"deal_params"})," ","{"," debt_eur, entry_ev_eur, ownership_pct, check_size_eur ","}",", ",e.jsx("code",{children:"fund_thesis"})," (tableau complet ",e.jsx("code",{children:"fund_thesis (from fund_type 2)"}),"), ",e.jsx("code",{children:"gp_comment_raw"})," = ","{{","1201.gp_comment","}}",", ",e.jsx("code",{children:"synergy_signals"}),", ",e.jsx("code",{children:"financial_model_setup"})," = ","{{","1201.financial_model_setup","}}","."]}):e.jsxs(e.Fragment,{children:["Six top-level keys: ",e.jsx("code",{children:"memo"})," (fast · quick · detailed), ",e.jsx("code",{children:"company"})," ","{"," name, sector, ",e.jsx("code",{children:"raw_signals"}),", ",e.jsx("code",{children:"structured_signals"})," ","}",", ",e.jsx("code",{children:"deal_params"})," ","{"," debt_eur, entry_ev_eur, ownership_pct, check_size_eur ","}",", ",e.jsx("code",{children:"fund_thesis"})," (full ",e.jsx("code",{children:"fund_thesis (from fund_type 2)"})," array), ",e.jsx("code",{children:"gp_comment_raw"})," = ","{{","1201.gp_comment","}}",", ",e.jsx("code",{children:"synergy_signals"}),", ",e.jsx("code",{children:"financial_model_setup"})," = ","{{","1201.financial_model_setup","}}","."]})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"1687"})," · ",e.jsx("code",{children:"http:MakeRequest"})," POST ",e.jsx("code",{children:"/build-model"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Envoie la requête à lâendpoint Modal ; body = ",e.jsxs("code",{children:["{{","1707.json","}}"]}),", auth Bearer, timeout 300 s."]}):e.jsxs(e.Fragment,{children:["Fires the request to the Modal endpoint; body = ",e.jsxs("code",{children:["{{","1707.json","}}"]}),", Bearer auth, 300 s timeout."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Retourne le JSON du modèle : 20 blocs HTML pré-rendus (voir plus bas), le verdict quant factuel ",e.jsx("code",{children:"thesis_alignment.financial_verdict"})," â ","{"," HURDLES_PASSED · OUT_OF_HURDLE (stratégique) · CONFIRMED · MONITOR · CONSIDER · PASS (VC/LBO) ","}",", ",e.jsx("code",{children:"entry_validation"}),", ",e.jsx("code",{children:"deal_params_used"}),", ",e.jsx("code",{children:"returns"})," (dont ",e.jsx("code",{children:"hurdles_passed.all"}),", ",e.jsx("code",{children:"moic_total"}),", ",e.jsx("code",{children:"irr_total_pct"}),", ",e.jsx("code",{children:"gp_decision_used"}),", ",e.jsx("code",{children:"gp_conviction_coefficient"}),"), ",e.jsx("code",{children:"unit_economics"}),", ",e.jsx("code",{children:"projections"})," (15 ans), ",e.jsx("code",{children:"headcount_plan"}),", ",e.jsx("code",{children:"comp_data"}),", ",e.jsx("code",{children:"arr_data"}),", ",e.jsx("code",{children:"overrides_log"}),", ",e.jsx("code",{children:"excel_url"}),", et un objet structuré ",e.jsx("code",{children:"post_model_verdict"})," â voir lâencart « ce qui est mort vs vivant dans la réponse » plus bas."]}):e.jsxs(e.Fragment,{children:["Returns the model JSON: 20 pre-rendered HTML blocks (see below), the factual quant verdict ",e.jsx("code",{children:"thesis_alignment.financial_verdict"})," â ","{"," HURDLES_PASSED · OUT_OF_HURDLE (strategic) · CONFIRMED · MONITOR · CONSIDER · PASS (VC/LBO) ","}",", ",e.jsx("code",{children:"entry_validation"}),", ",e.jsx("code",{children:"deal_params_used"}),", ",e.jsx("code",{children:"returns"})," (incl. ",e.jsx("code",{children:"hurdles_passed.all"}),", ",e.jsx("code",{children:"moic_total"}),", ",e.jsx("code",{children:"irr_total_pct"}),", ",e.jsx("code",{children:"gp_decision_used"}),", ",e.jsx("code",{children:"gp_conviction_coefficient"}),"), ",e.jsx("code",{children:"unit_economics"}),", ",e.jsx("code",{children:"projections"})," (15-year), ",e.jsx("code",{children:"headcount_plan"}),", ",e.jsx("code",{children:"comp_data"}),", ",e.jsx("code",{children:"arr_data"}),", ",e.jsx("code",{children:"overrides_log"}),", ",e.jsx("code",{children:"excel_url"}),", and a structured ",e.jsx("code",{children:"post_model_verdict"}),` object â see the "what's dead vs alive in the response" callout below.`]})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"1702"})," · OpenRouter ",e.jsx("code",{children:"google/gemini-3-flash-preview"})," (temperature 1, json_mode off)"]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Part 6 â Financial Intelligence Renderer."})," Ãcrit lâenveloppe HTML narrative autour des tableaux pré-construits. Lit depuis 1687 : ",e.jsx("code",{children:"status"})," (gate HARD_BLOCK), ",e.jsx("code",{children:"mode"})," / ",e.jsx("code",{children:"match_mode"})," / ",e.jsx("code",{children:"fallback_mode"}),", ",e.jsx("code",{children:"thesis_alignment.financial_verdict"}),", les champs numériques factuels (entry_ev_m, moic_total, irr_total_pct, hurdle_*, hurdles_passed.all, gp_decision_used, gp_conviction_coefficient, capture_rate_applied, risk_discount_applied, integration_cost_m, wacc, standalone_value_m, syn_net_value_m, acquisition_value_m, entry_ev_max_payable_m, arr_data_gap), et chaque ",e.jsx("code",{children:"html_tables.*"})," comme chaîne. Ãmet 3 blocs de contenu contigus séparés par ",e.jsx("code",{children:"<!-- SPLIT_ROI -->"})," et ",e.jsx("code",{children:"<!-- SPLIT_CAP -->"}),", chacun contenant des placeholders ",e.jsx("code",{children:"[[[REPLACE_WITH_*_HTML]]]"}),"."]}):e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Part 6 â Financial Intelligence Renderer."})," Writes the narrative HTML wrapper around the pre-built tables. Reads from 1687: ",e.jsx("code",{children:"status"})," (HARD_BLOCK gate), ",e.jsx("code",{children:"mode"})," / ",e.jsx("code",{children:"match_mode"})," / ",e.jsx("code",{children:"fallback_mode"}),", ",e.jsx("code",{children:"thesis_alignment.financial_verdict"}),", the factual numeric fields (entry_ev_m, moic_total, irr_total_pct, hurdle_*, hurdles_passed.all, gp_decision_used, gp_conviction_coefficient, capture_rate_applied, risk_discount_applied, integration_cost_m, wacc, standalone_value_m, syn_net_value_m, acquisition_value_m, entry_ev_max_payable_m, arr_data_gap), and every ",e.jsx("code",{children:"html_tables.*"})," as a string. Emits 3 contiguous content blocks separated by ",e.jsx("code",{children:"<!-- SPLIT_ROI -->"})," and ",e.jsx("code",{children:"<!-- SPLIT_CAP -->"}),", each containing ",e.jsx("code",{children:"[[[REPLACE_WITH_*_HTML]]]"})," placeholders."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"part_6"})," = bloc forecast + ",e.jsx("code",{children:"<!-- SPLIT_ROI -->"})," + bloc ROI + ",e.jsx("code",{children:"<!-- SPLIT_CAP -->"})," + bloc cap-table. Ne consomme ",e.jsx("strong",{children:"PAS"})," le ",e.jsx("code",{children:"post_model_verdict"})," structuré ni ",e.jsx("code",{children:"conviction_status"})," â seulement le HTML rendu."]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"part_6"})," = forecast block + ",e.jsx("code",{children:"<!-- SPLIT_ROI -->"})," + ROI block + ",e.jsx("code",{children:"<!-- SPLIT_CAP -->"})," + cap-table block. Does ",e.jsx("strong",{children:"NOT"})," consume the structured ",e.jsx("code",{children:"post_model_verdict"})," or ",e.jsx("code",{children:"conviction_status"})," â only the rendered HTML."]})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"1752"})," · ",e.jsx("code",{children:"http:MakeRequest"})," POST ",e.jsx("code",{children:"/build-memo"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["POST vers ",e.jsx("code",{children:"/build-memo"})," en form-data : chaque Part (",e.jsx("code",{children:"part_1"})," ⦠",e.jsx("code",{children:"part_9"}),") générée par le LLM narratif BP2 respectif (1702 en fait partie), ",e.jsx("code",{children:"css_shell"}),", ",e.jsx("code",{children:"company_name"}),", ",e.jsx("code",{children:"slug"}),", ",e.jsx("code",{children:"memo_type"}),", plus les 20 ",e.jsx("code",{children:"html_tables.*"})," de 1687 comme champs séparés. ",e.jsx("code",{children:"/build-memo"})," assainit chaque Part, découpe part_6 sur les marqueurs ",e.jsx("code",{children:"SPLIT_ROI"})," / ",e.jsx("code",{children:"SPLIT_CAP"})," et enveloppe chaque bloc dans son ",e.jsx("code",{children:"section-container"}),", normalise les alias de placeholder tronqués, substitue chaque ",e.jsx("code",{children:"[[[REPLACE_WITH_*_HTML]]]"})," par la valeur du tableau, fait apparaître tout placeholder orphelin dans un encart jaune « tableau attendu non injecté », et publie le HTML assemblé vers ",e.jsx("code",{children:"proplace-co/memos"})," sur GitHub."]}):e.jsxs(e.Fragment,{children:["Posts to ",e.jsx("code",{children:"/build-memo"})," with form-data: each Part (",e.jsx("code",{children:"part_1"})," ⦠",e.jsx("code",{children:"part_9"}),") generated by the respective BP2 narrative LLM (1702 is one of them), ",e.jsx("code",{children:"css_shell"}),", ",e.jsx("code",{children:"company_name"}),", ",e.jsx("code",{children:"slug"}),", ",e.jsx("code",{children:"memo_type"}),", plus all 20 ",e.jsx("code",{children:"html_tables.*"})," from 1687 as separate fields. ",e.jsx("code",{children:"/build-memo"})," sanitises each Part, splits part_6 on the ",e.jsx("code",{children:"SPLIT_ROI"})," / ",e.jsx("code",{children:"SPLIT_CAP"}
3221)," markers and wraps each block in its ",e.jsx("code",{children:"section-container"}),", normalises truncated placeholder aliases, substitutes every ",e.jsx("code",{children:"[[[REPLACE_WITH_*_HTML]]]"}),' with the table value, surfaces any orphan placeholder as a yellow "tableau attendu non injecté" notice, and publishes the assembled HTML to ',e.jsx("code",{children:"proplace-co/memos"})," on GitHub."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["LâURL du mémo publié sur ",e.jsx("code",{children:"memos.proplace.co"}),". Les diagnostics de déséquilibre / dâassainissement sont retournés à côté."]}):e.jsxs(e.Fragment,{children:["The published memo URL on ",e.jsx("code",{children:"memos.proplace.co"}),". Imbalance / sanitisation diagnostics are returned alongside."]})})]})]})]}),e.jsxs("div",{className:"callout warning",children:[e.jsx("strong",{children:r?e.jsxs(e.Fragment,{children:["Ce qui est mort vs vivant dans la réponse ",e.jsx("code",{children:"/build-model"}),"."]}):e.jsxs(e.Fragment,{children:["What's dead vs alive in the ",e.jsx("code",{children:"/build-model"})," response."]})}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Lâobjet structuré ",e.jsx("code",{children:"post_model_verdict"})," (avec ",e.jsx("code",{children:"conviction_status"}),", ",e.jsx("code",{children:"conviction_status_rationale"}),", ",e.jsx("code",{children:"irr_in_thesis_context"}),", ",e.jsx("code",{children:"suspensive_conditions"}),", ",e.jsx("code",{children:"executive_scenario_guide"}),", ",e.jsx("code",{children:"open_questions_propagated"}),") est construit par ",e.jsx("code",{children:"services/post_model_verdict.py"})," et retourné dans le JSON, mais ",e.jsx("strong",{children:"rien dans BP2 ne le consomme comme donnée structurée"}),". Seuls ses rendus HTML (",e.jsx("code",{children:"post_verdict_html"})," + les 5 helpers strategic-only + ",e.jsx("code",{children:"conviction_modele_html"}),") atteignent le mémo. Le LLM narratif de la Part 6 (module 1702) ne lit que les champs quant factuels (",e.jsx("code",{children:"thesis_alignment.financial_verdict"}),", ",e.jsx("code",{children:"returns.hurdles_passed.all"}),", ",e.jsx("code",{children:"returns.gp_decision_used"}),", ",e.jsx("code",{children:"returns.gp_conviction_coefficient"}),") plus les chaînes HTML."]}):e.jsxs(e.Fragment,{children:["The structured ",e.jsx("code",{children:"post_model_verdict"})," object (with ",e.jsx("code",{children:"conviction_status"}),", ",e.jsx("code",{children:"conviction_status_rationale"}),", ",e.jsx("code",{children:"irr_in_thesis_context"}),", ",e.jsx("code",{children:"suspensive_conditions"}),", ",e.jsx("code",{children:"executive_scenario_guide"}),", ",e.jsx("code",{children:"open_questions_propagated"}),") is built by ",e.jsx("code",{children:"services/post_model_verdict.py"})," and returned in the JSON, but ",e.jsx("strong",{children:"nothing in BP2 consumes it as structured data"}),". Only its HTML renderings (",e.jsx("code",{children:"post_verdict_html"})," + the 5 strategic-only helpers + ",e.jsx("code",{children:"conviction_modele_html"}),") reach the memo. The Part 6 narrative LLM (module 1702) reads only the factual quant fields (",e.jsx("code",{children:"thesis_alignment.financial_verdict"}),", ",e.jsx("code",{children:"returns.hurdles_passed.all"}),", ",e.jsx("code",{children:"returns.gp_decision_used"}),", ",e.jsx("code",{children:"returns.gp_conviction_coefficient"}),") plus the HTML strings."]})}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Le CALL / CONSIDER / MONITOR / PASS adressé au CEO est fixé ",e.jsx("strong",{children:"en amont de /build-model"})," par le Module 5 du GP Synthétique (",e.jsx("code",{children:"conviction_synthesis.decision"}
3221),") et propagé comme ",e.jsx("code",{children:"gp_decision_used"}),". /build-model ne lâécrase jamais. ",e.jsx("code",{children:"conviction_status"})," existe pour colorer la section post-verdict du mémo ; la réconciliation entre le verdict quant et la décision qualitative du GP se fait dans la prose narrative du module 1702."]}):e.jsxs(e.Fragment,{children:["The CEO-facing CALL / CONSIDER / MONITOR / PASS is set ",e.jsx("strong",{children:"upstream of /build-model"})," by GP Synthetique Module 5 (",e.jsx("code",{children:"conviction_synthesis.decision"}),") and is propagated as ",e.jsx("code",{children:"gp_decision_used"}),". /build-model never overwrites it. ",e.jsx("code",{children:"conviction_status"})," exists to colour the post-verdict section of the memo; reconciliation between the quant verdict and the GP qualitative decision happens in module 1702's narrative prose."]})})]}),e.jsx("h4",{className:"doc-h4",children:r?"Entrées â ce que /build-model lit réellement":"Inputs â what /build-model actually reads"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Flux":"Stream"}),e.jsx("th",{children:"Source"}),e.jsx("th",{children:r?"Ce que ça pilote":"What it drives"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"1. Fund Thesis"})}),e.jsxs("td",{children:[e.jsx("code",{children:"fund_thesis.financial_model_config"}),". ",r?"FIGà â jamais muté par le moteur hebdo.":"FROZEN â never mutated by the weekly engine."]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"mode"})," + ",e.jsx("code",{children:"ma_submode"})," â chemin de formule. Accepte ",e.jsx("code",{children:"VC"}),", ",e.jsx("code",{children:"MA"}),", ",e.jsx("code",{children:"ADAPTIVE"})," ; les valeurs composées comme ",e.jsx("code",{children:"ma_strategic_acquirer"})," et les préfixes de nom de fonds (",e.jsx("code",{children:"S4BF MA"}),", ",e.jsx("code",{children:"Profund VC"}),") sont normalisés dans lâendpoint. ADAPTIVE infère VC vs MA à partir de la présence de ",e.jsx("code",{children:"deal_params.debt_eur"})," ou dâun ",e.jsx("code",{children:"acquirer_context"})," non vide. Les alias de submode (",e.jsx("code",{children:"platform_build"}),", ",e.jsx("code",{children:"bolt_on"}),", ",e.jsx("code",{children:"tuck_in"}),", ",e.jsx("code",{children:"strategic"}),") se réduisent à ",e.jsx("code",{children:"strategic_acquirer"}),".",e.jsx("br",{}),e.jsx("code",{children:"sector_profile"})," â ","{"," ",e.jsx("code",{children:"b2b_travel_saas"})," · ",e.jsx("code",{children:"ai_native_saas"})," · ",e.jsx("code",{children:"fintech_payment_rails"})," · ",e.jsx("code",{children:"marketplace_b2b"})," ","}"," â bibliothèque de benchmarks dans ",e.jsx("code",{children:"services/benchmarks.py"}),". ",e.jsx("code",{children:"b2b_travel_saas"})," par défaut si absent.",e.jsx("br",{}),"Les overrides de hurdle par mode sont lus dans ",e.jsx("code",{children:"vc_config.hurdle_irr/moic"}),", ",e.jsx("code",{children:"lbo_config.hurdle_irr/moic"}),", ",e.jsx("code",{children:"ma_config.hurdle_roi/irr/moic/payback_years"}),", sinon les défauts sectoriels sâappliquent (ex. ",e.jsx("code",{children:"b2b_travel_saas"})," : VC IRR 0.30 · MOIC 5.0 · M&A IRR 0.20 · MOIC 2.5).",e.jsx("br",{}),e.jsx("code",{children:"acquirer_context"})," (M&A stratégique uniquement) : ",e.jsx("code",{children:"acquirer_arr_eur"})," (base des synergies de cross-sell), ",e.jsx("code",{children:"synergy_horizon_years"})," (défaut 5), ",e.jsx("code",{children:"cross_sell_targets"}),". Le WACC est codé en dur à ",e.jsx("strong",{children:"0.08"})," à la fois dans la VAN des synergies et la triangulation de valorisation DCF.",e.jsx("br",{}),e.jsx("code",{children:"entry_gates.hard_block_below_arr_eur / hard_block_above_arr_eur"})," â plancher/plafond dâARR qui retourne ",e.jsx("code",{children:"status: HARD_BLOCK"})," (seulement quand la confiance ARR nâest pas « low »)."]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"mode"})," + ",e.jsx("code",{children:"ma_submode"})," â formula path. Accepts ",e.jsx("code",{children:"VC"}),", ",e.jsx("code",{children:"MA"}),", ",e.jsx("code",{children:"ADAPTIVE"}),"; compound values like ",e.jsx("code",{children:"ma_strategic_acquirer"})," and fund-name prefixes (",e.jsx("code",{children:"S4BF MA"}),", ",e.jsx("code",{children:"Profund VC"}),") are normalised in the endpoint. ADAPTIVE infers VC vs MA from the presence of ",e.jsx("code",{children:"deal_params.debt_eur"})," or a non-empty ",e.jsx("code",{children:"acquirer_context"}),". Submode aliases (",e.jsx("code",{children:"platform_build"}),", ",e.jsx("code",{children:"bolt_on"}),", ",e.jsx("code",{children:"tuck_in"}),", ",e.jsx("code",{children:"strategic"}),") collapse to ",e.jsx("code",{children:"strategic_acquirer"}),".",e.jsx("br",{}),e.jsx("code",{children:"sector_profile"})," â ","{"," ",e.jsx("code",{children:"b2b_travel_saas"})," · ",e.jsx("code",{children:"ai_native_saas"}
3221)," · ",e.jsx("code",{children:"fintech_payment_rails"})," · ",e.jsx("code",{children:"marketplace_b2b"})," ","}"," â benchmark library in ",e.jsx("code",{children:"services/benchmarks.py"}),". Default ",e.jsx("code",{children:"b2b_travel_saas"})," if missing.",e.jsx("br",{}),"Hurdle overrides per mode are read from ",e.jsx("code",{children:"vc_config.hurdle_irr/moic"}),", ",e.jsx("code",{children:"lbo_config.hurdle_irr/moic"}),", ",e.jsx("code",{children:"ma_config.hurdle_roi/irr/moic/payback_years"}),", otherwise sector defaults apply (e.g. ",e.jsx("code",{children:"b2b_travel_saas"}),": VC IRR 0.30 · MOIC 5.0 · M&A IRR 0.20 · MOIC 2.5).",e.jsx("br",{}),e.jsx("code",{children:"acquirer_context"})," (M&A Strategic only): ",e.jsx("code",{children:"acquirer_arr_eur"})," (base for cross-sell synergies), ",e.jsx("code",{children:"synergy_horizon_years"})," (default 5), ",e.jsx("code",{children:"cross_sell_targets"}),". WACC is hardcoded to ",e.jsx("strong",{children:"0.08"})," in both the synergy NPV and the DCF valuation triangulation.",e.jsx("br",{}),e.jsx("code",{children:"entry_gates.hard_block_below_arr_eur / hard_block_above_arr_eur"})," â ARR floor/ceiling that returns ",e.jsx("code",{children:"status: HARD_BLOCK"}),' (only when ARR confidence is not "low").']})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"2. Convictions qualitatives (Module 5)":"2. Qualitative convictions (Module 5)"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"financial_model_setup"})," â objet optionnel produit par le Module 5 du GP Synthétique après lâécriture du mémo qualitatif, transmis par le module Make 1707 comme ",e.jsxs("code",{children:["{{","1201.financial_model_setup","}}"]}),"."]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"financial_model_setup"})," â optional object produced by Module 5 of the GP Synthetique after the qualitative memo is written and forwarded by Make module 1707 as ",e.jsxs("code",{children:["{{","1201.financial_model_setup","}}"]}),"."]})}),e.jsxs("td",{children:[e.jsx("strong",{children:r?"Override les benchmarks en Priorité 0.":"Overrides benchmarks at Priority 0."})," ",r?e.jsxs(e.Fragment,{children:["Chaque override est consigné dans ",e.jsx("code",{children:"overrides_log.key_overrides"})," avec valeurs from/to et une chaîne de justification."]}):e.jsxs(e.Fragment,{children:["Every override is logged in ",e.jsx("code",{children:"overrides_log.key_overrides"})," with from/to values and a rationale string."]}),e.jsx("br",{}),e.jsx("code",{children:"growth_conviction.growth_y1_belief_pct"})," â ",r?"pilote le revenu Y1":"pilots Y1 revenue",". ",e.jsx("code",{children:"growth_decay_belief"})," AGGRESSIVE / NORMAL / SUSTAINED â ",r?"courbe de croissance":"growth curve",". ",e.jsx("code",{children:"growth_trajectory_qualitative"})," + ",e.jsx("code",{children:"growth_evidence_quote"})," ",r?"suivent comme champs dâaudit":"ride along as audit fields",".",e.jsx("br",{}),e.jsx("code",{children:"margin_conviction.gross_margin_belief_pct"})," â ",r?"override la marge brute":"overrides gross margin",". ",e.jsx("code",{children:"ebitda_path"})," PROFITABLE_NOW / PROFITABLE_BY_Y3 / GROWTH_AT_ALL_COST. ",e.jsx("code",{children:"opex_intensity"})," LEAN Ã0.85 / NORMAL Ã1.00 / HEAVY Ã1.15.",e.jsx("br",{}),e.jsx("code",{children:"moat_conviction.implication_for_exit_multiple"})," PREMIUM Ã1.30 / IN_LINE Ã1.00 / DISCOUNT Ã0.75 ",r?"multiplie la fourchette de multiple de sortie pilotée par la conviction":"multiplies the conviction-led exit multiple range",". ",e.jsx("code",{children:"moat_type"}),", ",e.jsx("code",{children:"moat_strength"}),", ",e.jsx("code",{children:"pricing_power"}),", ",e.jsx("code",{children:"moat_evidence_quote"})," ",r?"sont reportés":"carry through",".",e.jsx("br",{}),e.jsx("code",{children:"exit_conviction.exit_multiple_belief"})," + ",r?"facteur moat":"moat factor"," â ",r?"construit les multiples de sensibilité VC / LBO (triés, dédupliqués, pondérés par [0.5â2.0] / [0.6â1.6])":"builds the VC / LBO sensitivity multiples (sorted, dedupe, factored by [0.5â2.0] / [0.6â1.6])",". ",e.jsx("code",{children:"exit_horizon_years"})," ",r?"override":"overrides"," ",e.jsx("code",{children:"hold_period"}),". ",e.jsx("code",{children:"exit_type_likely"})," ",r?"pilote les frais de sortie IPO 5% / STRATEGIC 1.5%":"drives IPO 5% / STRATEGIC 1.5% exit fees",".",e.jsx("br",{}),e.jsx("code",{children:"do_not_assume[]"})," â ",r?e.jsxs(e.Fragment,{children:["garde-fous remontés dans ",e.jsx("code",{children:"overrides_log.violations"})]}):e.jsxs(e.Fragment,{children:["guardrails surfaced in ",e.jsx("code",{children:"overrides_log.violations"})]}),".",e.jsx("br",{}),e.jsxs("code",{children:["scenario_overrides.","{","crash_case_trigger, base_case_rationale, best_case_unlock","}"]})," â ",r?e.jsxs(e.Fragment,{children:["injectés dans ",e.jsx("code",{children:"executive_scenario_guide"})]}):e.jsxs(e.Fragment,{children:["injected into ",e.jsx("code",{children:"executive_scenario_guide"})]}),".",e.jsx("br",{}),e.jsx("code",{children:"conviction_synthesis.fatal_flaw_if_any"})," â ",r?e.jsxs(e.Fragment,{children:["force ",e.jsx("code",{children:"conviction_status = INVALIDATED"})]}):e.jsxs(e.Fragment,{children:["forces ",e.jsx("code",{children:"conviction_status = INVALIDATED"})]}),". ",e.jsx("code",{children:"conviction_synthesis.decision"})," (CALL / CONSIDER / MONITOR / PASS) ",r?"pondère par probabilité la VAN des synergies via un coefficient Ã1.0 / Ã0.7 / Ã0.4 / Ã0.1.":"probability-weights the synergy NPV via a coefficient Ã1.0 / Ã0.7 / Ã0.4 / Ã0.1."]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"3. Synergies qualitatives (M&A uniquement)":"3. Qualitative synergies (M&A only)"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"openrouter_synergies"})," (= module Make BP2 1327, OpenRouter ",e.jsx("code",{children:"x-ai/grok-4.3"}),") â tourne indépendamment de /build-model et est transmis dans la requête comme chaîne brute dans ",e.jsx("code",{children:"company.raw_signals.openrouter_synergies"}),"."]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"openrouter_synergies"})," (= Make BP2 module 1327, OpenRouter ",e.jsx("code",{children:"x-ai/grok-4.3"}),") â runs independently of /build-model and is forwarded into the request as a raw string in ",e.jsx("code",{children:"company.raw_signals.openrouter_synergies"}),"."]})}),e.jsxs("td",{children:[r?e.jsxs(e.Fragment,{children:["Lâendpoint appelle ",e.jsx("code",{children:"services/synergy_parser.py::parse_qual
3221itative_synergies()"})," qui lit le ",e.jsx("code",{children:"synergy_matrix[]"})," du LLM. Chaque entrée a un ",e.jsx("code",{children:"type"})," â ","{"," ",e.jsx("code",{children:"Soft Revenue"})," · ",e.jsx("code",{children:"Hard Cost"})," · ",e.jsx("code",{children:"Defensive Moat"})," · ",e.jsx("code",{children:"Structural"})," ","}"," et un ",e.jsx("code",{children:"est_financial_impact"})," â ","{"," High · Medium · Low ","}","."]}):e.jsxs(e.Fragment,{children:["The endpoint calls ",e.jsx("code",{children:"services/synergy_parser.py::parse_qualitative_synergies()"})," which reads the LLM's ",e.jsx("code",{children:"synergy_matrix[]"}),". Each entry has a ",e.jsx("code",{children:"type"})," â ","{"," ",e.jsx("code",{children:"Soft Revenue"})," · ",e.jsx("code",{children:"Hard Cost"})," · ",e.jsx("code",{children:"Defensive Moat"})," · ",e.jsx("code",{children:"Structural"})," ","}"," and an ",e.jsx("code",{children:"est_financial_impact"})," â ","{"," High · Medium · Low ","}","."]}),e.jsx("br",{}),r?"Impact â multiplicateur :":"Impact â multiplier:"," High 1.5à · Medium 1.0à · Low 0.5à â ",r?"cumulé par famille dans":"accumulated per family into"," ",e.jsx("code",{children:"revenue_score"}),", ",e.jsx("code",{children:"cost_score"}),", ",e.jsx("code",{children:"moat_score"}),", ",e.jsx("code",{children:"structural_score"}),".",e.jsx("br",{}),e.jsx("code",{children:"revenue_score"})," ",r?"met à lâéchelle":"scales"," ",e.jsx("code",{children:"synergy_cross_sell_pct"})," + ",e.jsx("code",{children:"synergy_upsell_pct"})," ",r?"(facteur plafonné 0.5â3.0)":"(factor capped 0.5â3.0)",". ",e.jsx("code",{children:"cost_score"})," ",r?"met à lâéchelle":"scales"," ",e.jsx("code",{children:"synergy_infra_saving_pct"})," + ",e.jsx("code",{children:"synergy_ga_saving_pct"})," + ",e.jsx("code",{children:"synergy_rd_sharing_pct"})," ",r?"(facteur plafonné 0.5â2.5, économies plafonnées 30â40%)":"(factor capped 0.5â2.5, savings capped 30â40%)",". ",e.jsx("code",{children:"structural_score"})," â ",r?e.jsxs(e.Fragment,{children:["forfait ",e.jsx("strong",{children:"500 k⬠dâARR par point structurel"})," via"]}):e.jsxs(e.Fragment,{children:["flat ",e.jsx("strong",{children:"â¬500k ARR per structural point"})," via"]})," ",e.jsx("code",{children:"geo_expansion_arr"}),". ",e.jsx("code",{children:"moat_score"})," ",r?"est suivi pour le rapport mais ne met pas à lâéchelle un benchmark":"is tracked for the report but does not scale a benchmark",".",e.jsx("br",{}),e.jsx("strong",{children:r?"Le LLM nâémet jamais de montants en euros.":"The LLM never emits euro amounts."})," ",r?"Les valeurs monétaires viennent des formules déterministes ci-dessous.":"Monetary values come from the deterministic formulas below.",e.jsx("br",{}),r?e.jsxs(e.Fragment,{children:["Les synergies dynamiques parsées depuis le LLM sont fusionnées avec dâéventuels overrides côté Make dans ",e.jsx("code",{children:"payload.synergy_signals"}),"."]}):e.jsxs(e.Fragment,{children:["Dynamic synergies parsed from the LLM are merged with any Make-side overrides in ",e.jsx("code",{children:"payload.synergy_signals"}),"."]})]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"4. Signaux scrapés (enrich_company)":"4. Scraped signals (enrich_company)"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Pappers FR + web Exa. ",e.jsx("code",{children:"services/comparable_engine.py::search_target_financials"})," lance jusquâà ",e.jsx("strong",{children:"13 requêtes Exa réparties sur 5 modules"})," (Module 0 financiers de base · 1 Pricing & ACV · 2 Ãquipe & structure de coûts · 3 Croissance & traction · 4 Base clients), plus des requêtes optionnelles ",e.jsx("code",{children:"site:domain"})," et par locale-pays."]}):e.jsxs(e.Fragment,{children:["Pappers FR + Exa web. ",e.jsx("code",{children:"services/comparable_engine.py::search_target_financials"})," issues up to ",e.jsx("strong",{children:"13 Exa queries spread across 5 modules"})," (Module 0 Core financials · 1 Pricing & ACV · 2 Team & Cost Structure · 3 Growth & Traction · 4 Customer base), plus optional ",e.jsx("code",{children:"site:domain"})," and country-locale queries."]})}),e.jsxs("td",{children:[r?e.jsxs(e.Fragment,{children:["Alimentent la triangulation dâARR et overrident les défauts de benchmark pour revenue, ARR, EBITDA, marge brute, churn, NRR, ACV, pricing entry / enterprise, headcount par dept (rétro-ingénierié en ",e.jsx("code",{children:"exa_rd_pct / sales_pct / marketing_pct / cs_pct / ga_pct"})," quand le détail du headcount ET le revenu sont disponibles), historique de financement."]}):e.jsxs(e.Fragment,{children:["Fuel ARR triangulation and override benchmark defaults for revenue, ARR, EBITDA, gross margin, churn, NRR, ACV, pricing entry / enterprise, headcount by dept (reverse-engineered into ",e.jsx("code",{children:"exa_rd_pct / sales_pct / marketing_pct / cs_pct / ga_pct"})," when both headcount breakdown and revenue are available), funding history."]}),e.jsx("br",{}),e.jsx("strong",{children:r?e.jsxs(e.Fragment,{children:["COST GATE â Exa ne tourne que quand ",e.jsx("code",{children:'memo == "detailed"'}),"."]}):e.jsxs(e.Fragment,{children:["COST GATE â Exa runs only when ",e.jsx("code",{children:'memo == "detailed"'}),"."]})})," ",r?e.jsxs(e.Fragment,{children:["Pour ",e.jsx("code",{children:"fast"})," / ",e.jsx("code",{children:"quick"})," lâendpoint saute à la fois ",e.jsx("code",{children:"search_target_financials"})," et ",e.jsx("code",{children:"find_comparables"})," ; les comparables retombent sur un stub de benchmark sectoriel via ",e.jsx("code",{children:"_fallback_result"}),"."]}):e.jsxs(e.Fragment,{children:["For ",e.jsx("code",{children:"fast"})," / ",e.jsx("code",{children:"quick"})," the endpoint skips both ",e.jsx("code",{children:"search_target_financials"})," and ",e.jsx("code",{children:"find_comparables"}),"; comparables fall back to a sector-benchmark stub via ",e.jsx("code",{children:"_fallback_result"}),"."]}),e.jsx("br",{}),r?e.jsxs(e.Fragment,{children:["Le ",e.jsx("code",{children:"latest_valuation_eur"})," côté Make et lâextraction prose-regex priment sur Exa pour le back-calc à valorisation connue (un contrôle de cohérence 50à rejette les valeurs qui ressemblent à une confusion dâunités Mâ¬/Mdâ¬)."]}):e.jsxs(e.Fragment,{children:["Make-side ",e.jsx("code",{children:"latest_valuation_eur"})," and prose-regex extraction take priority over Exa for the known-valuation back-calc (a 50à sanity check rejects values that look like Mâ¬/B⬠unit confusion)."]})]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"5. Prose du verdict GP Synthétique":"5. GP Synthetique verdict prose"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"gp_comment_raw"})," = ","{{","1201.gp_comment","}}"," â texte tel quel du verdict du Module 5 du GP Synthétique."]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"gp_comment_raw"})," = ","{{","1201.gp_comment","}}"," â verbatim text of the GP Synthetique Module 5 verdict."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Acheminé vers le renderer Negotiation Range et Negotiation Arguments de lâonglet ROI Excel (",e.jsx("code",{children:"services/neg_arguments.py"}),") : sert à extraire les arguments LOW BALL spécifiques au deal depuis le Risk Register et les arguments STRATEGIC depuis le Deal Rationale. En son absence, le renderer retombe sur des arguments uniquement issus du template."]}):e.jsxs(e.Fragment,{children:["Routed into the Excel ROI tab's Negotiation Range and Negotiation Arguments renderer (",e.jsx("code",{children:"services/neg_arguments.py"}),"): used to extract deal-specific LOW BALL arguments from the Risk Register and STRATEGIC arguments from the Deal Rationale. When absent, the renderer falls back to template-only arguments."]})})]})]})]}),e.jsx("h4",{className:"doc-h4",children:r?"Traitement â ce que /build-model exécute, dans lâordre":"Processing â what /build-model executes, in order"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Ãtape":"Stage"}),e.jsx("th",{children:"Service"}),e.jsx("th",{children:r?"Sortie":"Output"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"0. Normalisation mode / submode & injection des hurdles de bench":"0. Mode / submode normalisation & bench hurdles injection"})}),e.jsx("td",{children:e.jsx("code",{children:"modal_app.py::build_model"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Résout les modes composés / préfixés / ADAPTIVE, charge ",e.jsx("code",{children:"SECTOR_BENCHMARKS[sector_profile]"}),", puis superpose les hurdles ",e.jsx("code",{children:"vc_config / lbo_config / ma_config"})," sur le dict de bench. Erreur de hard-config retournée si ",e.jsx("code",{children:"financial_model_config.mode"})," reste non résolu."]}):e.jsxs(e.Fragment,{children:["Resolves compound / prefixed / ADAPTIVE modes, loads ",e.jsx("code",{children:"SECTOR_BENCHMARKS[sector_profile]"}),", then overlays ",e.jsx("code",{children:"vc_config / lbo_config / ma_config"})," hurdles on the bench dict. Hard-config error returned if ",e.jsx("code",{children:"financial_model_config.mode"})," remains unresolved."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"1. Enrichissement de signaux + parsing dynamique des synergies":"1. Signal enrichment + dynamic synergy parsing"})}),e.jsxs("td",{children:[e.jsx("code",{children:"services/enrich_company.py"})," + ",e.jsx("code",{children:"services/synergy_parser.py"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Fusionne ",e.jsx("code",{children:"raw_signals"})," + ",e.jsx("code",{children:"structured_signals"}),", puis lance le parser de synergies sur ",e.jsx("code",{children:"raw_signals.openrouter_synergies"})," (sortie du module BP2 1327) pour dériver des synergy_signals mis à lâéchelle ; les overrides Make se superposent. Hard-block retourné si ",e.jsx("code",{children:"pappers_statut"})," â ","{"," inactive · dissolved · liquidated ","}","."]}):e.jsxs(e.Fragment,{children:["Merges ",e.jsx("code",{children:"raw_signals"})," + ",e.jsx("code",{children:"structured_signals"}),", then runs the synergy parser on ",e.jsx("code",{children:"raw_signals.openrouter_synergies"})," (BP2 module 1327 output) to derive scaled synergy_signals; Make overrides merge on top. Hard-block returns if ",e.jsx("code",{children:"pappers_statut"})," â ","{"," inactive · dissolved · liquidated ","}","."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"2. Intel financière cible Exa (detailed uniquement)":"2. Exa target financial intel (detailed only)"})}),e.jsx("td",{children:e.jsx("code",{children:"services/comparable_engine.py::search_target_financials"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Lance jusquâà 13 requêtes Exa sur 5 modules + extraction LLM (OpenRouter). Hydrate ",e.jsx("code",{children:"signals"})," avec ",e.jsx("code",{children:"exa_revenue / arr / ebitda / ebitda_margin / growth_rate / churn / nrr / acv / pricing / headcount by dept / valuation / last_funding"}),". Injecte ",e.jsx("code",{children:"known_valuation_eur"})," pour le back-calc dâARR quand le tour a ⤠24 mois. Détail du headcount rétro-ingénierié en ",e.jsx("code",{children:"exa_rd_pct / sales_pct / marketing_pct / cs_pct / ga_pct"}),"."]}):e.jsxs(e.Fragment,{children:["Runs up to 13 Exa queries across 5 modules + LLM extraction (OpenRouter). Hydrates ",e.jsx("code",{children:"signals"})," with ",e.jsx("code",{children:"exa_revenue / arr / ebitda / ebitda_margin / growth_rate / churn / nrr / acv / pricing / headcount by dept / valuation / last_funding"}),". Injects ",e.jsx("code",{children:"known_valuation_eur"})," for ARR back-calc when the round is ⤠24 months old. Headcount breakdown reverse-engineered into ",e.jsx("code",{children:"exa_rd_pct / sales_pct / marketing_pct / cs_pct / ga_pct"}),"."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"3. Triangulation dâARR":"3. ARR triangulation"})}),e.jsx("td",{children:e.jsx("code",{children:"services/estimator.py::triangulate_arr"})}),e.jsxs("td",{children:[r?"Triangulation pondérée multi-sources avec confiance par paliers.":"Weighted multi-source triangulation with tier-based confidence.",e.jsx("br",{}),e.jsx("strong",{children:r?"Palier 1 (HIGH)":"Tier 1 (HIGH)"}),": public_revenue (0.60), pappers_ca_n1 (0.50), arr_from_pitch (0.50), exa_web_arr (0.45).",e.jsx("br",{}),e.jsx("strong",{children:r?"Palier 2 (MEDIUM)":"Tier 2 (MEDIUM)"}
3221),": sales_headcount_proxy (0.35, 1 AE â â¬500k ARR), pricing à customers (0.25, G2 à 50 à ACV), headcount_benchmark (0.20).",e.jsx("br",{}),e.jsx("strong",{children:r?"Palier 3 (LOW)":"Tier 3 (LOW)"}),": funding_implied (0.15), traffic_conversion (0.10).",e.jsx("br",{}),r?e.jsxs(e.Fragment,{children:["Fallback par ",e.jsx("code",{children:"stage_signal"})," : Pre-seed â¬250k · Seed â¬1M · Series A â¬3.5M · Scale-up â¬10M."]}):e.jsxs(e.Fragment,{children:["Fallback by ",e.jsx("code",{children:"stage_signal"}),": Pre-seed â¬250k · Seed â¬1M · Series A â¬3.5M · Scale-up â¬10M."]}),e.jsx("br",{}),r?e.jsxs(e.Fragment,{children:["Sortie : ",e.jsx("code",{children:"arr_mid / arr_low / arr_high / confidence / method / sources / data_gap / divergence_pct"}),". Une divergence > 2à entre sources lève ",e.jsx("code",{children:"data_gap=true"})," et alimente un bandeau rouge « Test du Rachat » en aval."]}):e.jsxs(e.Fragment,{children:["Output: ",e.jsx("code",{children:"arr_mid / arr_low / arr_high / confidence / method / sources / data_gap / divergence_pct"}),". Divergence > 2à across sources raises ",e.jsx("code",{children:"data_gap=true"}),' and feeds a red "Test du Rachat" banner downstream.']})]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"4. Valorisation par comparables (detailed uniquement)":"4. Comparable valuation (detailed only)"})}),e.jsx("td",{children:e.jsx("code",{children:"services/comparable_engine.py::find_comparables"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Recherche Exa de transactions M&A + financement correspondant à secteur / stade / géographie / mode. Calcule P25 / médiane / P75 dâEV/Revenue et EV/EBITDA sur 5â7 transactions comparables. Pour ",e.jsx("code",{children:"fast"})," / ",e.jsx("code",{children:"quick"})," lâendpoint substitue ",e.jsx("code",{children:"_fallback_result"})," (stub de benchmark sectoriel interpolé par un score ",e.jsx("code",{children:"company_quality"})," précoce)."]}):e.jsxs(e.Fragment,{children:["Exa search for M&A + funding transactions matching sector / stage / geography / mode. Computes P25 / median / P75 of EV/Revenue and EV/EBITDA over 5â7 comparable transactions. For ",e.jsx("code",{children:"fast"})," / ",e.jsx("code",{children:"quick"})," the endpoint substitutes ",e.jsx("code",{children:"_fallback_result"})," (sector-benchmark stub interpolated by an early ",e.jsx("code",{children:"company_quality"})," score)."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"5. Validation dâentrée (cohérence EV / Check / Ownership)":"5. Entry validation (EV / Check / Ownership coherence)"})}),e.jsx("td",{children:e.jsx("code",{children:"modal_app.py"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["VC : résout ",e.jsx("code",{children:"entry_ev = check_size / ownership_pct"})," dans le sens où les entrées le permettent ; retombe sur ",e.jsx("code",{children:"known_valuation_eur"})," ou ",e.jsx("code",{children:"arr_mid à recommended_entry_multiple"}),". MA : ",e.jsx("code",{children:"ownership_pct"})," par défaut à 1.0. Calcule ",e.jsx("code",{children:"implied_multiple"})," + ",e.jsx("code",{children:"multiple_warning"})," contre un plafond sectoriel (b2b_travel 8à · ai_native 15à · fintech 10à · marketplace 6à · défaut 12Ã)."]}):e.jsxs(e.Fragment,{children:["VC: solves ",e.jsx("code",{children:"entry_ev = check_size / ownership_pct"})," in whichever direction inputs supply; falls back to ",e.jsx("code",{children:"known_valuation_eur"})," or ",e.jsx("code",{children:"arr_mid à recommended_entry_multiple"}),". MA: ",e.jsx("code",{children:"ownership_pct"})," defaults to 1.0. Computes ",e.jsx("code",{children:"implied_multiple"})," + ",e.jsx("code",{children:"multiple_warning"})," against a sector ceiling (b2b_travel 8à · ai_native 15à · fintech 10à · marketplace 6à · default 12Ã)."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"6. Détection du modèle de revenu":"6. Revenue model detection"})}),e.jsx("td",{children:e.jsx("code",{children:"services/revenue_model.py::detect_revenue_model"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Détecte SaaS ARR / Services / Marketplace / Transactional / Usage-based depuis les signaux (overridable via ",e.jsx("code",{children:"financial_model_config.revenue_model_override"}),"). Produit ",e.jsx("code",{children:"revenue_breakdown"})," avec ",e.jsx("code",{children:"model_type"})," et ",e.jsx("code",{children:"lines"}),"."]}):e.jsxs(e.Fragment,{children:["Detects SaaS ARR / Services / Marketplace / Transactional / Usage-based from signals (overridable via ",e.jsx("code",{children:"financial_model_config.revenue_model_override"}),"). Produces ",e.jsx("code",{children:"revenue_breakdown"})," with ",e.jsx("code",{children:"model_type"})," and ",e.jsx("code",{children:"lines"}),"."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"7. Projection P&L (15 ans)":"7. P&L projection (15-year)"})}),e.jsx("td",{children:e.jsx("code",{children:"services/pnl_model.py::build_pnl"})}),e.jsxs("td",{children:[e.jsx("strong",{children:r?"Priorité des données":"Data priority"}),": ",r?e.jsxs(e.Fragment,{children:["conviction ",e.jsx("code",{children:"financial_model_setup"})," â signal réel Exa â benchmark sectoriel."]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"financial_model_setup"})," conviction â Exa real signal â sector benchmark."]}),e.jsx("br",{}),"Revenue â Gross Profit â OPEX (R&D, Sales, Marketing, CS, G&A) â EBITDA â D&A â EBIT â Taxes â NOPAT â FCF.",e.jsx("br",{}),r?e.jsxs(e.Fragment,{children:["Projette toujours 15 ans (",e.jsx("code",{children:"max_horizon"}),") pour que le driver de hold-period Excel soit re-pilotable ; le HTML du mémo tronque à ",e.jsx("code",{children:"min(15, max(hold + 1, 5))"})," ans. Chaque paramètre P&L est tagué ",e.jsx("code",{children:"conviction / exa_real_data / benchmark"})," dans ",e.jsx("code",{children:"pnl_param_sources"}),", qui alimente ",e.jsx("code",{children:"overrides_log"}),"."]}):e.jsxs(e.Fragment,{children:["Always projects 15 years (",e.jsx("code",{children:"max_horizon"}),") so the Excel hold-period driver can be re-piloted; the memo HTML truncates to ",e.jsx("code",{children:"min(15, max(hold + 1, 5))"})," years. Each P&L parameter is tagged ",e.jsx("code",{children:"conviction / exa_real_data / benchmark"})," in ",e.jsx("code",{children:"pnl_param_sources"}),", which feeds ",e.jsx("code",{children:"overrides_log"}),"."]}),e.jsx("br",{}),r?e.jsxs(e.Fragment,{children:["Plan de headcount par département rétro-ingénierié depuis ",e.jsx("code",{children:"exa_rd_pct / sales_pct / marketing_pct / cs_pct / ga_pct"})," (benchmark si Exa muet)."]}):e.jsxs(e.Fragment,{children:["Headcount plan by department reverse-engineered from ",e.jsx("code",{children:"exa_rd_pct / sales_pct / marketing_pct / cs_pct / ga_pct"}
3221)," (benchmark if Exa silent)."]}),e.jsx("br",{}),r?e.jsxs(e.Fragment,{children:["La courbe de croissance applique le profil de décroissance issu de la conviction, OPEX mis à lâéchelle par ",e.jsx("code",{children:"opex_intensity"}),"."]}):e.jsxs(e.Fragment,{children:["Growth curve applies the decay profile from conviction, OPEX scaled by ",e.jsx("code",{children:"opex_intensity"}),"."]})]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"8. Unit economics"})}),e.jsx("td",{children:e.jsx("code",{children:"services/unit_economics.py::compute_unit_economics"})}),e.jsxs("td",{children:["ACV · Gross Margin · Churn · NRR · LTV = (ACV à GM) / Churn · CAC blended = S&M / ",r?"nouveaux clients":"new customers"," · CAC Payback · LTV/CAC · Magic Number · ",r?e.jsxs(e.Fragment,{children:["score ",e.jsx("code",{children:"company_quality"})," (0â1) · scénarios DD Crash / Base / Good · dict ",e.jsx("code",{children:"signal_sources"})," traçant lâorigine (Exa Web / Benchmark / Formule) de chaque métrique · ",e.jsx("code",{children:"warnings[]"})," pour les hurdles manqués et les manques de données."]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"company_quality"})," score (0â1) · Crash / Base / Good DD scenarios · ",e.jsx("code",{children:"signal_sources"})," dict tracing the origin (Exa Web / Benchmark / Formule) of every metric · ",e.jsx("code",{children:"warnings[]"})," for hurdle misses and data gaps."]})]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"9. Résolution du multiple de sortie":"9. Exit-multiple resolution"})}),e.jsx("td",{children:e.jsx("code",{children:"modal_app.py"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Pour les modes VC et LBO, les multiples de sortie sont initialisés depuis les comparables P25 / médiane / P75 si ⥠3 comps existent. La conviction ",e.jsx("code",{children:"exit_multiple_belief à moat_factor"})," override alors en Priorité 0, produisant une grille de sensibilité à 6 points."]}):e.jsxs(e.Fragment,{children:["For VC and LBO modes, exit multiples are seeded from comparables P25 / median / P75 if ⥠3 comps exist. The conviction ",e.jsx("code",{children:"exit_multiple_belief à moat_factor"})," then overrides at Priority 0, producing a 6-point sensitivity grid."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"10. Returns par mode":"10. Returns per mode"})}),e.jsx("td",{children:e.jsx("code",{children:"services/returns_engine.py::compute_returns"})}),e.jsxs("td",{children:[e.jsx("strong",{children:"VC"}),": ",e.jsx("code",{children:"MOIC = Exit_ARR à Exit_Multiple à Ownership_post_dilution / Check_Size"}),". ",e.jsx("code",{children:"IRR = MOIC^(1/hold) â 1"}),". ",r?"Matrice de sensibilité 6Ã6 (multiples de sortie à hold periods Y3âY8).":"6Ã6 sensitivity matrix (exit multiples à hold periods Y3âY8).",e.jsx("br",{}),e.jsx("strong",{children:"LBO"})," (",e.jsx("code",{children:"ma_submode = lbo_pure"}),"): ",e.jsx("code",{children:"MOIC = (Exit_Equity + Cumul_FCF) / Equity_Invested"}),", ",e.jsx("code",{children:"Exit_Equity = Exit_EBITDA à Exit_Multiple â Debt_remaining"}),". ",r?"Sensibilité sur 6 multiples dâEBITDA de sortie.":"Sensitivity on 6 exit EBITDA multiples.",e.jsx("br",{}),e.jsx("strong",{children:r?"M&A stratégique":"M&A Strategic"})," (",e.jsx("code",{children:"ma_submode = strategic_acquirer"}),"): ",r?"hybride rating-LLM à déterministe.":"hybrid LLM-rating à deterministic."," ",e.jsx("code",{children:"cross_sell_arr = acquirer_arr à scaled_cross_sell_pct à capture (0.70)"})," · ",e.jsx("code",{children:"upsell_arr = target_arr à scaled_upsell_pct à capture"})," · ",e.jsx("code",{children:"geo_expansion = structural_score à â¬500k"})," · ",e.jsx("code",{children:"rev_synergies = (cross_sell + upsell + geo) à (1 â risk_discount 0.15)"})," · ",e.jsx("code",{children:"cost_synergies = target_opex_proxy (= target_arr à 0.55) à scaled_saving_pct à capture à (1 â risk_discount)"}),".",e.jsx("br",{}
3221),e.jsx("code",{children:"NPV = Σ (total_annual à ramp[i]) / (1 + WACC 0.08)^(i+1)"}),", ramp = [0.30, 0.70, 1.0, 1.0, 1.0]. ",e.jsx("code",{children:"integration_cost = entry_ev Ã"})," ",r?"% par paliers":"tiered %"," (1% / 1.75% / 2.5% / 3.25% ",r?"selon lâARR cible":"depending on target ARR","). ",e.jsx("code",{children:"ROI = (NPV â integration_cost) / entry_ev"}),". ",e.jsx("code",{children:"MOIC = (NPV + entry_ev) / entry_ev"}),"."]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"11. Return total corrigé Strategic v2":"11. Strategic v2 corrected total-return"})}),e.jsx("td",{children:e.jsx("code",{children:"modal_app.py::_strategic_returns_v2"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Strategic-acquirer uniquement : recalcule le test comme ",e.jsx("em",{children:"FCF standalone cible + synergies â intégration"})," sur le hold period pilotable, en utilisant le multiple dérivé des comparables pour le fallback standalone-via-multiples (cadre Damodaran Control Premium). Sort ",e.jsx("code",{children:"roi_total / moic_total / irr_total_pct / payback_years_total / entry_ev_max_payable_m"})," et un bloc structuré ",e.jsx("code",{children:"hurdles_passed"})," ","{"," ",e.jsx("code",{children:"roi / moic / irr / all"})," ","}",". Câest la métrique phare que lit le CEO ; le ROI synergies-seules est gardé comme ",e.jsx("code",{children:"synergy_yield_pct"}),". Le ",e.jsx("code",{children:"quant_verdict"})," factuel émis est ",e.jsx("strong",{children:"HURDLES_PASSED"})," ou ",e.jsx("strong",{children:"OUT_OF_HURDLE"})," â la décision qualitative du GP (Module 5) reste la source de vérité pour le verdict final du mémo ; la réconciliation entre les deux est gérée par le LLM narratif BP2."]}):e.jsxs(e.Fragment,{children:["Strategic-acquirer only: re-computes the test as ",e.jsx("em",{children:"target standalone FCF + synergies â integration"})," over the pilotable hold period, using the comparable-derived multiple for the standalone-via-multiples fallback (Damodaran Control Premium framework). Outputs ",e.jsx("code",{children:"roi_total / moic_total / irr_total_pct / payback_years_total / entry_ev_max_payable_m"})," and a structured ",e.jsx("code",{children:"hurdles_passed"})," ","{"," ",e.jsx("code",{children:"roi / moic / irr / all"})," ","}"," block. This is the headline metric the CEO reads; the synergy-only ROI is kept as ",e.jsx("code",{children:"synergy_yield_pct"}),". The factual ",e.jsx("code",{children:"quant_verdict"})," emitted is ",e.jsx("strong",{children:"HURDLES_PASSED"})," or ",e.jsx("strong",{children:"OUT_OF_HURDLE"})," â the GP qualitative decision (Module 5) remains the source of truth for the memo's final verdict; reconciliation between the two is handled by the BP2 narrative LLM."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"12. Repondération de la VAN des synergies par décision GP":"12. Synergy NPV reweight by GP decision"})}),e.jsx("td",{children:e.jsx("code",{children:"modal_app.py::_recompute_qualitative_npv"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Strategic-acquirer uniquement : ",e.jsx("code",{children:"conviction_synthesis.decision"})," â CALL / CONSIDER / MONITOR / PASS multiplie la VAN des synergies par Ã1.0 / Ã0.7 / Ã0.4 / Ã0.1 respectivement. Remontée comme ",e.jsx("code",{children:"gp_conviction_coefficient"}),"."]}):e.jsxs(e.Fragment,{children:["Strategic-acquirer only: ",e.jsx("code",{children:"conviction_synthesis.decision"})," â CALL / CONSIDER / MONITOR / PASS multiplies the synergy NPV by Ã1.0 / Ã0.7 / Ã0.4 / Ã0.1 respectively. Surfaced as ",e.jsx("code",{children:"gp_conviction_coefficient"}),"."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"13. Scoring dâalignement à la thèse":"13. Thesis alignment scoring"})}),e.jsx("td",{children:e.jsx("code",{children:"modal_app.py"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Compare ",e.jsx("code",{children:"signals.signals[]"})," contre ",e.jsx("code",{children:"semantic_filters.angles[].green_flags / red_flags"})," (imbriqué v5.4, fallback plat v5.2). ",e.jsx("code",{children:"alignment_score"})," part de 100, déduit jusquâà 30 pour multiple_warning, 15 pour aucun match vert, 40 pour tout hit rouge, 10 chacun pour LTV/CAC sous le plancher et NRR < 100%."]}):e.jsxs(e.Fragment,{children:["Matches ",e.jsx("code",{children:"signals.signals[]"})," against ",e.jsx("code",{children:"semantic_filters.angles[].green_flags / red_flags"})," (v5.4 nested, v5.2 flat fallback). ",e.jsx("code",{children:"alignment_score"})," starts at 100, deducts up to 30 for multiple_warning, 15 for no green match, 40 for any red hit, 10 each for LTV/CAC below floor and NRR < 100%."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"14. Classeur Excel + URL de volume Modal":"14. Excel workbook + Modal volume URL"})}),e.jsxs("td",{children:[e.jsx("code",{children:"services/excel_builder.py"})," + Modal Volume"]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Persiste le modèle complet en .xlsx (Assumptions, Financial Intel, Comparables, P&L, CF, UE, ROI, Cap Table, Headcount, Synergies, Negotiation Range) et retourne ",e.jsx("code",{children:"excel_url"}),". Lâonglet ROI intègre les Negotiation Arguments dérivés de ",e.jsx("code",{children:"gp_comment_raw"}),"."]}):e.jsxs(e.Fragment,{children:["Persists the full model as an .xlsx (Assumptions, Financial Intel, Comparables, P&L, CF, UE, ROI, Cap Table, Headcount, Synergies, Negotiation Range) and returns ",e.jsx("code",{children:"excel_url"}),". The ROI tab embeds the Negotiation Arguments derived from ",e.jsx("code",{children:"gp_comment_raw"}),"."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"15. Triangulation de valorisation (Multiples à DCF)":"
322115. Valuation triangulation (Multiples à DCF)"})}),e.jsxs("td",{children:[e.jsx("code",{children:"modal_app.py"})," + ",e.jsx("code",{children:"services/html_table_renderer.py"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["à lâannée de sortie : method_multiples_revenue (ARR à recommended_entry_multiple), method_multiples_ebitda (EBITDA à recommended_ev_ebitda_multiple), DCF (Σ FCF actualisés sur le hold + VA de la TV moyennée entre perpétuité de Gordon g=2.5% et TV par multiple de sortie) â WACC fixé à 0.08. La médiane statistique des trois méthodes (robuste à un DCF négatif sur les cibles de croissance) est la valorisation triangulée ; ",e.jsx("code",{children:"verdict"})," â below / aligned / above contre lâEV dâentrée (bande ±15%)."]}):e.jsxs(e.Fragment,{children:["At exit year: method_multiples_revenue (ARR à recommended_entry_multiple), method_multiples_ebitda (EBITDA à recommended_ev_ebitda_multiple), DCF (Σ discounted FCF over hold + PV of TV averaged across Gordon perpetuity g=2.5% and exit-multiple TV) â WACC fixed at 0.08. Statistical median across the three methods (robust to negative DCF in growth targets) is the triangulated valuation; ",e.jsx("code",{children:"verdict"})," â below / aligned / above against the entry EV (±15% band)."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"16. Verdict post-modèle":"16. Post-model verdict"})}),e.jsx("td",{children:e.jsx("code",{children:"services/post_model_verdict.py::build_post_model_verdict"})}),e.jsx("td",{children:r?"Voir le tableau dédié plus bas.":"See dedicated table below."})]})]})]}),e.jsx("h4",{className:"doc-h4",children:r?"Sorties â les 18 blocs HTML qui atteignent réellement le mémo":"Outputs â the 18 HTML blocks that actually reach the memo"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Lâendpoint ",e.jsx("code",{children:"/build-model"})," retourne un JSON dont lâobjet ",e.jsx("code",{children:"html_tables"})," expose 20 clés, mais seules ",e.jsx("strong",{children:"18 sont câblées dans le mémo"}),". Vérification croisée via ",e.jsx("code",{children:"make-cli scenarios get 3869328"})," + ",e.jsx("code",{children:'grep -E "REPLACE_WITH_[A-Z_]+_HTML"'})," : les 18 placeholders ci-dessous sont émis par le module ",e.jsx("strong",{children:"1702"})," (LLM narratif Part 6). Deux clés de réponse â ",e.jsx("code",{children:"hc_html"})," et ",e.jsx("code",{children:"post_verdict_html"})," â sont encore calculées par le renderer pour rétro-compatibilité mais aucun placeholder ",e.jsx("code",{children:"[[[REPLACE_WITH_HC_HTML]]]"})," ni ",e.jsx("code",{children:"[[[REPLACE_WITH_POST_VERDICT_HTML]]]"})," nâexiste dans aucune Part, donc elles nâatteignent jamais le mémo publié. à considérer comme mortes en prod. En ",e.jsx("code",{children:"HARD_BLOCK"}),", lâendpoint remplace chaque placeholder par le même encart « Modèle financier non généré » pour que le mémo ne rende jamais de sections â¬/% vides."]}):e.jsxs(e.Fragment,{children:["The ",e.jsx("code",{children:"/build-model"})," endpoint returns a JSON whose ",e.jsx("code",{children:"html_tables"})," object exposes 20 keys, but only ",e.jsx("strong",{children:"18 are wired into the memo"}),". Cross-check via ",e.jsx("code",{children:"make-cli scenarios get 3869328"})," + ",e.jsx("code",{children:'grep -E "REPLACE_WITH_[A-Z_]+_HTML"'}),": the 18 placeholders below are emitted by module ",e.jsx("strong",{children:"1702"})," (Part 6 narrative LLM). Two response keys â ",e.jsx("code",{children:"hc_html"})," and ",e.jsx("code",{children:"post_verdict_html"})," â are still computed by the renderer for back-compat but no ",e.jsx("code",{children:"[[[REPLACE_WITH_HC_HTML]]]"})," or ",e.jsx("code",{children:"[[[REPLACE_WITH_POST_VERDICT_HTML]]]"})," placeholder exists in any Part, so they never reach the published memo. Treat them as dead in prod. On ",e.jsx("code",{children:"HARD_BLOCK"}),', the endpoint replaces every placeholder with the same "Modèle financier non généré" notice so the memo never renders empty â¬/% sections.']})}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Placeholder · bloc HTML":"Placeholder · HTML block"}),e.jsx("th",{children:r?"Ce quâil rend dans le mémo":"What it renders in the memo"}),e.jsx("th",{children:r?"Section du mémo":"Memo section"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_MODEL_DRIVERS_HTML]]]"})," · ",e.jsx("code",{children:"model_drivers_html"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Bandeau explicatif des drivers : hold period, horizon max, mode/submode, nombre dâannées affichées, et la chaîne de source disant au CEO dâoù vient ",e.jsx("code",{children:"hold_period"})," (fund thesis vs défaut 5 ans vs override de conviction)."]}):e.jsxs(e.Fragment,{children:["Driver explainer banner: hold period, max horizon, mode/submode, displayed year count, and the source string telling the CEO where ",e.jsx("code",{children:"hold_period"})," came from (fund thesis vs default 5y vs conviction override)."]})}),e.jsx("td",{children:r?"Financial Forecast (haut)":"Financial Forecast (top)"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_VALORISATION_HTML]]]"})," · ",e.jsx("code",{children:"valorisation_html"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Triangulation de valorisation : 3 méthodes (Multiples-Revenue, Multiples-EBITDA, DCF Gordon+TV moyennée) â low/median/high, avec la jauge Negotiation Range ancrée sur la médiane triangulée vs lâEV dâentrée. Tire les arguments spécifiques au deal de ",e.jsx("code",{children:"gp_comment_raw"})," quand fourni."]}):e.jsxs(e.Fragment,{children:["Valuation triangulation: 3 methods (Multiples-Revenue, Multiples-EBITDA, DCF Gordon+TV averaged) â low/median/high, with the Negotiation Range gauge anchored on the triangulated median vs entry EV. Pulls deal-specific arguments from ",e.jsx("code",{children:"gp_comment_raw"})," when supplied."]})}),e.jsx("td",{children:"Financial Forecast"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_COMPARABLES_HTML]]]"})," · ",e.jsx("code",{children:"comparables_html"})]}),e.jsx("td",{children:r?e.jsx(e.Fragment,{children:"Chaque transaction M&A / financement trouvée par Exa + multiples dérivés P25/Médiane/P75 (EV/Revenue et EV/EBITDA). Vide quand memo â detailed (stub de benchmark sectoriel à la place)."}):e.jsx(e.Fragment,{children:"Every M&A / funding transaction found by Exa + derived P25/Median/P75 multiples (EV/Revenue and EV/EBITDA). Empty when memo â detailed (sector-benchmark stub instead)."})}),e.jsx("td",{children:"Financial Forecast"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_FINANCIAL_INTEL_HTML]]]"})," · ",e.jsx("code",{children:"financial_intel_html"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Tableau 1 : sources dâARR (Pappers / Web / Pitch / Public / Proxy) â Low/Mid/High triangulés · Tableau 2 : toutes les métriques sourcées par Exa (EBITDA, marges, churn, NRR, ACV, pricing, détail HC, clients, financement). Vide dans les mémos ",e.jsx("code",{children:"fast"})," / ",e.jsx("code",{children:"quick"})," puisque Exa est gaté à ",e.jsx("code",{children:"detailed"}),"."]}):e.jsxs(e.Fragment,{children:["Table 1: ARR sources (Pappers / Web / Pitch / Public / Proxy) â triangulated Low/Mid/High · Table 2: all Exa-sourced metrics (EBITDA, margins, churn, NRR, ACV, pricing, HC breakdown, customers, funding). Empty in ",e.jsx("code",{children:"fast"})," / ",e.jsx("code",{children:"quick"})," memos since Exa is gated to ",e.jsx("code",{children:"detailed"}),"."]})}),e.jsx("td",{children:"Financial Forecast"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_ASSUMPTIONS_HTML]]]"})," · ",e.jsx("code",{children:"assumptions_html"})]}),e.jsx("td",{children:r?e.jsx(e.Fragment,{children:"7 colonnes : Hy
3221pothèse · Active · Crash · Base · Best · Explication · Source. Badge par ligne (données réelles / benchmark)."}):e.jsx(e.Fragment,{children:"7 cols: Hypothèse · Active · Crash · Base · Best · Explication · Source. Badge per row (real data / benchmark)."})}),e.jsx("td",{children:"Financial Forecast"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_UE_HTML]]]"})," · ",e.jsx("code",{children:"ue_html"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["ACV, GM, Churn, NRR, LTV brut/net, CAC blended/paid/organic, LTV/CAC, Payback, Magic Number, Clients â avec des badges ",e.jsx("code",{children:"signal_sources"})," dynamiques par métrique."]}):e.jsxs(e.Fragment,{children:["ACV, GM, Churn, NRR, LTV gross/net, CAC blended/paid/organic, LTV/CAC, Payback, Magic Number, Customers â with dynamic ",e.jsx("code",{children:"signal_sources"})," badges per metric."]})}),e.jsx("td",{children:"Financial Forecast"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_PNL_HTML]]]"})," · ",e.jsx("code",{children:"pnl_html"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["P&L sur ",e.jsx("code",{children:"min(15, hold + 1)"})," ans avec colonne Formule / Source. OPEX détaillé par département avec sous-lignes effectifs. Le plan de headcount est rendu inline ici â il nây a pas de bloc headcount séparé dans le mémo."]}):e.jsxs(e.Fragment,{children:["P&L over ",e.jsx("code",{children:"min(15, hold + 1)"})," years with Formula / Source column. OPEX broken out by department with effectifs sub-rows. The headcount plan is rendered inline here â there is no separate headcount block in the memo."]})}),e.jsx("td",{children:"Financial Forecast"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_SYNERGIES_HTML]]]"})," · ",e.jsx("code",{children:"synergies_html"})]}),e.jsx("td",{children:r?e.jsx(e.Fragment,{children:"M&A stratégique uniquement : cartes de synergies (nom, mécanisme, ligne P&L, impacts Y1âY5), avec capture_rate, risk_discount, gp_conviction_coef et bandeau gp_decision."}):e.jsx(e.Fragment,{children:"M&A Strategic only: synergy cards (name, mechanism, P&L line, Y1âY5 impacts), with capture_rate, risk_discount, gp_conviction_coef and gp_decision banner."})}),e.jsx("td",{children:"Financial Forecast"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_CF_HTML]]]"})," · ",e.jsx("code",{children:"cf_html"})]}),e.jsxs("td",{children:["NOPAT â D&A â Capex â ÎBFR â ",r?"Service de dette":"Debt service"," (LBO) â FCF â Cumul FCF."]}),e.jsx("td",{children:"Financial Forecast"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_VERDICT_RAPIDE_HTML]]]"})," · ",e.jsx("code",{children:"verdict_rapide_html"})]}),e.jsx("td",{children:r?"Strategic uniquement : carte de verdict quant 1 écran (HURDLES_PASSED / O
3221UT_OF_HURDLE + les 4 ratios qui comptent).":"Strategic-only: 1-screen quant verdict card (HURDLES_PASSED / OUT_OF_HURDLE + the 4 ratios that matter)."}),e.jsx("td",{children:"ROI Analysis"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_SCENARIOS_GUIDE_HTML]]]"})," · ",e.jsx("code",{children:"scenarios_guide_html"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Strategic uniquement : narratifs exécutifs Crash / Base / Best (utilise ",e.jsx("code",{children:"scenario_overrides"})," tel quel quand le Module 5 les a fournis, fallback quantitatif sinon)."]}):e.jsxs(e.Fragment,{children:["Strategic-only: Crash / Base / Best executive narratives (uses ",e.jsx("code",{children:"scenario_overrides"})," verbatim when Module 5 supplied them, quantitative fallback otherwise)."]})}),e.jsx("td",{children:"ROI Analysis"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_CONDITIONS_HTML]]]"})," · ",e.jsx("code",{children:"conditions_html"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Strategic uniquement : liste de conditions suspensives (jusquâà 3, depuis ",e.jsx("code",{children:"do_not_assume"})," + le fatal_flaw rétrogradé si les hurdles passent). Pas de deadline / if_not_met structurés â texte indicatif seulement."]}):e.jsxs(e.Fragment,{children:["Strategic-only: suspensive conditions list (up to 3, from ",e.jsx("code",{children:"do_not_assume"})," + the demoted fatal_flaw if hurdles pass). No structured deadline / if_not_met â advisory text only."]})}),e.jsx("td",{children:"ROI Analysis"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_ROI_HTML]]]"})," · ",e.jsx("code",{children:"roi_html"})]}),e.jsx("td",{children:r?"Strategic uniquement : ROI, Payback, MOIC, IRR, Financial Adequacy Score.":"Strategic-only: ROI, Payback, MOIC, IRR, Financial Adequacy Score."}),e.jsx("td",{children:"ROI Analysis"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_SENSITIVITES_HTML]]]"})," · ",e.jsx("code",{children:"sensitivites_html"})]}),e.jsx("td",{children:r?"Strategic uniquement : tableau de sensibilité pour le test de return total corrigé (FCF cible + synergies â intégration sur lâhorizon de hold).":"Strategic-only: sensitivity table for the corrected total-return test (target FCF + synergies â integration over hold horizon)."}),e.jsx("td",{children:"ROI Analysis"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_RETURNS_HTML]]]"})," · ",e.jsx("code",{children:"returns_html"})]}),e.jsx("td",{children:r?"VC : Deal Economics + matrice MOIC 2D + matrice IRR 2D. LBO : Base Case + sensibilité 6 points sur les multiples dâEBITDA de sortie. Strategic : vide (remplacé par les helpers strategic-only ci-dessus).":"VC: Deal Economics + 2D MOIC matrix + 2D IRR matrix. LBO: Base Case + 6-point sensitivity on exit EBITDA multiples. Strategic: empty (replaced by the strategic-only helpers above)."}),e.jsx("td",{children:"ROI Analysis"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_TRACABILITE_HYPOTHESES_HTML]]]"})," · ",e.jsx("code",{children:"tracabilite_hypotheses_html"})]}),e.jsx("td",{children:r?"Strategic uniquement : tableau param par param montrant quelle hypothèse a été fixée par conviction / Exa / benchmark.":"Strategic-only: param-by-param table showing which assumption was set by conviction / Exa / benchmark."}),e.jsx("td",{children:"ROI Analysis"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_CONVICTION_MODELE_HTML]]]"})," · ",e.jsx("code",{children:"conviction_modele_html"})]}),e.jsx("td",{children:r?"Audit de conviction : ratio de params overridés par conviction vs Exa vs benchmark ; liste les overrides clés avec leur from/to/rationale.":"Conviction audit: ratio of params overridden by conviction vs Exa vs benchmark; lists the key overrides with their from/to/rationale."}),e.jsx("td",{children:"ROI Analysis"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"[[[REPLACE_WITH_CAP_TABLE_HTML]]]"})," · ",e.jsx("code",{children:"cap_table_html"})]}),e.jsx("td",{children:r?"2 tableaux par mode (paramètres du deal + structure dâactionnariat avec dilution). Scénarios dâentrée + de sortie.":"2 tables per mode (deal parameters + shareholder structure with dilution). Entry + exit scenarios."}),e.jsx("td",{children:"Cap Table"})]})]})]}),e.jsxs("div",{className:"callout warning",children:[e.jsx("strong",{children:r?e.jsxs(e.Fragment,{children:["Champs de réponse ",e.jsx("em",{children:"aussi"})," morts en prod."]}):e.jsxs(e.Fragment,{children:["Response fields that are ",e.jsx("em",{children:"also"})," dead in prod."]})}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["La racine de la réponse ",e.jsx("code",{children:"/build-model"})," porte ",e.jsx("code",{children:"projections"}),", ",e.jsx("code",{children:"unit_economics"})," (lâobjet complet), ",e.jsx("code",{children:"comp_data"}),", ",e.jsx("code",{children:"arr_data"}),", ",e.jsx("code",{children:"headcount_plan"}),", ",e.jsx("code",{children:"deal_params_used"}),", ",e.jsx("code",{children:"post_model_verdict"})," (structuré) et ",e.jsx("code",{children:"overrides_log"})," (structuré) â aucun nâest lu par un module BP2. Ils alimentent le classeur Excel (",e.jsx("code",{children:"excel_url"}),") et nourrissent les renderers qui ont produit les 18 blocs HTML ci-dessus, mais aucun module en aval ne les tire comme données. Ce que le module ",e.jsx("strong",{children:"1702"})," lit réellement de la réponse : ",e.jsx("code",{children:"status"}),", ",e.jsx("code",{children:"company_name"}),", ",e.jsx("code",{children:"excel_url"}),", ",e.jsxs("code",{children:["thesis_alignment.","{","match_mode, fallback_mode, financial_verdict, green_matches, red_hits, warnings","}"]}),", ",e.jsxs("code",{children:["entry_validation.","{","stage_identified, arr_confidence, arr_method","}"]}),", ",e.jsxs("code",{children:["returns.","{","entry_ev_m, capture_rate_applied, risk_discount_applied, integration_cost_m, wacc, standalone_value_m, standalone_value_method, syn_net_value_m, acquisition_value_m, moic_total, irr_total_pct, hurdle_moic_thesis, hurdle_irr_thesis, hurdles_passed.all, entry_ev_max_payable_m, gp_decision_used, gp_conviction_coefficient, arr_data_gap, qualitative_details","}"]}),", et les 18 chaînes ",e.jsx("code",{children:"html_tables.*"})," listées ci-dessus."]}):e.jsxs(e.Fragment,{children:["The ",e.jsx("code",{children:"/build-model"})," response root carries ",e.jsx("code",{children:"projections"}),", ",e.jsx("code",{children:"unit_economics"})," (the full object), ",e.jsx("code",{children:"comp_data"}),", ",e.jsx("code",{children:"arr_data"}),", ",e.jsx("code",{children:"headcount_plan"}),", ",e.jsx("code",{children:"deal_params_used"}),", ",e.jsx("code",{children:"post_model_verdict"})," (structured) and ",e.jsx("code",{children:"overrides_log"})," (structured) â none of which are read by any BP2 module. They power the Excel workbook (",e.jsx("code",{children:"excel_url"}),") and feed the renderers that produced the 18 HTML blocks above, but no downstream module pulls them as data. What module ",e.jsx("strong",{children:"1702"})," actually reads from the response: ",e.jsx("code",{children:"status"}),", ",e.jsx("code",{children:"company_name"}),", ",e.jsx("code",{children:"excel_url"}),", ",e.jsxs("code",{children:["thesis_alignment.","{","match_mode, fallback_mode, financial_verdict, green_matches, red_hits, warnings","}"]}),", ",e.jsxs("code",{children:["entry_validation.","{","stage_identified, arr_confidence, arr_method","}"]}),", ",e.jsxs("code",{children:["returns.","{","entry_ev_m, capture_rate_applied, risk_discount_applied, integration_cost_m, wacc, standalone_value_m, standalone_value_method, syn_net_value_m, acquisition_value_m, moic_total, irr_total_pct, hurdle_moic_thesis, hurdle_irr_thesis, hurdles_passed.all, entry_ev_max_payable_m, gp_decision_used, gp_conviction_coefficient, arr_data_gap, qualitative_details","}"]}),", and the 18 ",e.jsx("code",{children:"html_tables.*"})," strings listed above."]})})]}),e.jsx("h4",{className:"doc-h4",children:r?"post_model_verdict â comment le conviction_status est calculé (rendu seulement)":"post_model_verdict â how the conviction_status is computed (rendering-only)"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Important :"})," lâobjet structuré ",e.jsx("code",{children:"post_model_verdict"})," est calculé par ",e.jsx("code",{children:"services/post_model_verdict.py"})," et rendu dans les blocs HTML (",e.jsx("code",{children:"post_verdict_html"}),", ",e.jsx("code",{children:"verdict_rapide_html"}),", ",e.jsx("code",{children:"scenarios_guide_html"}),", ",e.jsx("code",{children:"conditions_html"}),", ",e.jsx("code",{children:"tracabilite_hypotheses_html"}),", ",e.jsx("code",{children:"conviction_modele_html"}),") que le mémo intègre. ",e.jsx("strong",{children:"Il ne gate PAS le CALL / CONSIDER / MONITOR / PASS adressé au CEO."})," Cette décision est fixée en amont par le Module 5 du GP Synthétique (",e.jsx("code",{children:"conviction_synthesis.decision"}),") et fidèlement propagée comme ",e.jsx("code",{children:"gp_decision_used"}),". Le LLM narratif du module 1702 réconcilie le verdict quant (",e.jsx("code",{children:"thesis_alignment.financial_verdict"}
3221)," = HURDLES_PASSED / OUT_OF_HURDLE pour le stratégique, ou verdict base-case VC/LBO) avec ",e.jsx("code",{children:"gp_decision_used"})," en prose â en nâutilisant que le HTML rendu et les champs numériques factuels. Le tableau de statuts ci-dessous décrit le contenu visible de la section post-verdict, pas un gate de décision."]}):e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"Important:"})," the structured ",e.jsx("code",{children:"post_model_verdict"})," object is computed by ",e.jsx("code",{children:"services/post_model_verdict.py"})," and rendered into the HTML blocks (",e.jsx("code",{children:"post_verdict_html"}),", ",e.jsx("code",{children:"verdict_rapide_html"}),", ",e.jsx("code",{children:"scenarios_guide_html"}),", ",e.jsx("code",{children:"conditions_html"}),", ",e.jsx("code",{children:"tracabilite_hypotheses_html"}),", ",e.jsx("code",{children:"conviction_modele_html"}),") that the memo embeds. ",e.jsx("strong",{children:"It does NOT gate the CEO-facing CALL / CONSIDER / MONITOR / PASS."})," That decision is set upstream by GP Synthetique Module 5 (",e.jsx("code",{children:"conviction_synthesis.decision"}),") and is faithfully propagated as ",e.jsx("code",{children:"gp_decision_used"}),". The narrative LLM in module 1702 reconciles the quant verdict (",e.jsx("code",{children:"thesis_alignment.financial_verdict"}
3221)," = HURDLES_PASSED / OUT_OF_HURDLE for strategic, or VC/LBO base-case verdict) with ",e.jsx("code",{children:"gp_decision_used"})," in prose â using only the rendered HTML and the factual numeric fields. The status table below describes the visible content of the post-verdict section, not a decision gate."]})}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Champ":"Field"}),e.jsx("th",{children:r?"Statut / valeur":"Status / Value"}),e.jsx("th",{children:r?"Comment ça rend dans le mémo":"How it renders in the memo"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{rowSpan:5,children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"conviction_status"})," â VC/LBO via ",e.jsx("code",{children:"_assess_fund"}),", Strategic via ",e.jsx("code",{children:"_assess_strategic"})," (dans ",e.jsx("code",{children:"services/post_model_verdict.py"}),"). Calculé contre ",e.jsx("strong",{children:"les deux"})," hurdles IRR ET MOIC."]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"conviction_status"})," â VC/LBO via ",e.jsx("code",{children:"_assess_fund"}),", Strategic via ",e.jsx("code",{children:"_assess_strategic"})," (in ",e.jsx("code",{children:"services/post_model_verdict.py"}),"). Computed against ",e.jsx("strong",{children:"both"})," IRR AND MOIC hurdles."]})}),e.jsx("td",{children:e.jsx("strong",{children:"CONFIRMED"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Le base case passe les deux hurdles ET ",e.jsx("code",{children:"conviction_synthesis.decision == CALL"})," ET aucune réserve fatal_flaw / do_not_assume / data_gap ne subsiste. La carte post-verdict affiche un bandeau de confirmation vert."]}):e.jsxs(e.Fragment,{children:["Base case clears both hurdles AND ",e.jsx("code",{children:"conviction_synthesis.decision == CALL"})," AND no fatal_flaw / do_not_assume / data_gap caveats remain. The post-verdict card shows a green confirmation banner."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"NUANCED"})}),e.jsx("td",{children:r?e.jsx(e.Fragment,{children:"Les hurdles passent avec décision CALL mais des réserves subsistent (fatal_flaw rétrogradé en réserve, do_not_assume[] non vide, ou avertissements DATA_GAP présents) OU les hurdles passent sans décision qualitative fournie. La carte montre les réserves telles quelles à côté des hurdles verts."}):e.jsx(e.Fragment,{children:"Hurdles pass with CALL decision but caveats remain (fatal_flaw demoted to caveat, do_not_assume[] non-empty, or DATA_GAP warnings present) OR hurdles pass without a qualitative decision supplied. The card shows the caveats verbatim alongside the green hurdles."})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"QUANTITATIVELY_CHALLENGED"})}),e.jsx("td",{children:r?"Un hurdle manqué mais lâautre passe, OU seul le meilleur tiers de la matrice de sensibilité passe les deux, OU les deux hurdles passent mais la décision qualitative nâétait pas CALL. La carte indique quelle métrique est en deçà et de combien.":"One hurdle missed but the other passes, OR only the best third of the sensitivity matrix clears both, OR both hurdles pass but the qualitative decision was not CALL. The card states which metric falls short and by how much."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"INVALIDATED"})}),e.jsx("td",{children:r?"Fatal_flaw présent ET le hurdle de base échoue (VC/LBO) â ou fatal_flaw présent avec tout hurdle manqué (Strategic) â ou aucun scénario de sensibilité ne passe les deux hurdles (VC/LBO) â ou les deux hurdles manqués de >50% en Strategic. La carte fait apparaître le texte du fatal_flaw et lâécart du hurdle manqué.":"Fatal_flaw present AND base hurdle fails (VC/LBO) â or fatal_flaw present alongside any hurdle miss (Strategic) â or no sensitivity scenario meets both hurdles (VC/LBO) â or both hurdles miss by >50% in Strategic. The card surfaces the fatal_flaw text and the failed-hurdle gap."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"NO_QUALITATIVE_INPUT"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"financial_model_setup"})," est absent â le modèle tourne sur Exa + benchmarks seuls. ",e.jsx("code",{children:"executive_scenario_guide"})," retombe sur un template quantitatif uniquement, et ",e.jsx("code",{children:"suspensive_conditions"})," est une liste vide."]}
3221):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"financial_model_setup"})," is absent â the model runs on Exa + benchmarks only. ",e.jsx("code",{children:"executive_scenario_guide"})," falls back to a quantitative-only template, and ",e.jsx("code",{children:"suspensive_conditions"})," is an empty list."]})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"irr_in_thesis_context"})," + ",e.jsx("code",{children:"irr_in_thesis_context_source"})," ",r?"apparié":"paired"]}),e.jsx("td",{children:r?"Phrase en langage naturel":"Natural-language sentence"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Contextualise lâIRR vs le hurdle avec le qualifieur ",e.jsx("strong",{children:"excellent / cohérent / serré"})," (fonction ",e.jsx("code",{children:"_assessment_word"}),"), nommant la « condition clé » sur laquelle le modèle parie. ",e.jsx("code",{children:"_source"})," dit au lecteur si cette condition vient de ",e.jsx("code",{children:"conviction_synthesis.core_doubt"}),", ",e.jsx("code",{children:"do_not_assume[0]"}),", ou du fallback par défaut."]}):e.jsxs(e.Fragment,{children:["Contextualises IRR vs hurdle with the qualifier ",e.jsx("strong",{children:"excellent / coherent / tight"})," (function ",e.jsx("code",{children:"_assessment_word"}),'), naming the "key condition" the model bets on. ',e.jsx("code",{children:"_source"}
3221)," tells the reader whether that condition came from ",e.jsx("code",{children:"conviction_synthesis.core_doubt"}),", ",e.jsx("code",{children:"do_not_assume[0]"}),", or the default fallback."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"suspensive_conditions"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Jusquâà 3 entrées depuis ",e.jsx("code",{children:"do_not_assume"})," (un vrai fatal_flaw est préfixé quand les hurdles passent pour quâil apparaisse tout de même). Aucun champ structuré ",e.jsx("code",{children:"deadline"})," / ",e.jsx("code",{children:"if_not_met"})," nâest émis par lâendpoint â ils nâexistent que dans le renderer."]}):e.jsxs(e.Fragment,{children:["Up to 3 entries from ",e.jsx("code",{children:"do_not_assume"})," (a real fatal_flaw is prepended when hurdles pass so it still surfaces). No structured ",e.jsx("code",{children:"deadline"})," / ",e.jsx("code",{children:"if_not_met"})," fields are emitted by the endpoint â those exist only in the renderer."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Rendues en puces dans le bloc ",e.jsx("code",{children:"conditions_html"}),". ",e.jsx("strong",{children:"Mise au point :"})," aucun auto-trigger nây est câblé ; ce sont des textes indicatifs dans le mémo."]}):e.jsxs(e.Fragment,{children:["Rendered as bullet items in the ",e.jsx("code",{children:"conditions_html"})," block. ",e.jsx("strong",{children:"Reality check:"})," there is no auto-trigger wired to these; they are advisory text in the memo."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"executive_scenario_guide"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Chaînes crash_case · base_case · best_case. Quand ",e.jsxs("code",{children:["scenario_overrides.","{","crash_case_trigger / base_case_rationale / best_case_unlock","}"]})," sont fournis par le Module 5, ils sont injectés tels quels ; sinon des défauts quantitatifs construits depuis lâIRR / MOIC de base."]}):e.jsxs(e.Fragment,{children:["crash_case · base_case · best_case strings. When ",e.jsxs("code",{children:["scenario_overrides.","{","crash_case_trigger / base_case_rationale / best_case_unlock","}"]})," are provided by Module 5 they are injected verbatim; otherwise quantitative defaults built from the base IRR / MOIC."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Rendu dans ",e.jsx("code",{children:"scenarios_guide_html"})," comme le narratif de scénario lisible par le CEO."]}):e.jsxs(e.Fragment,{children:["Rendered in ",e.jsx("code",{children:"scenarios_guide_html"})," as the CEO-readable scenario narrative."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"open_questions_propagated"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Pass-through de ",e.jsx("code",{children:"financial_model_setup.open_questions_for_model"}),"."]}):e.jsxs(e.Fragment,{children:["Pass-through of ",e.jsx("code",{children:"financial_model_setup.open_questions_for_model"}),"."]})}),e.jsx("td",{children:r?"Transmis dans le HTML post-verdict pour la checklist de DD.":"Forwarded into the post-verdict HTML for the DD checklist."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"convictions_overrides_log"})," (alias ",e.jsx("code",{children:"overrides_log"})," à la racine de la réponse)"]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"convictions_overrides_log"})," (alias ",e.jsx("code",{children:"overrides_log"})," in the response root)"]})}),e.jsxs("td",{children:[e.jsx("code",{children:"params_overridden_by_conviction"})," · ",e.jsx("code",{children:"params_from_exa_real_data"})," · ",e.jsx("code",{children:"params_from_benchmark"})," + ",e.jsx("code",{children:"key_overrides[]"})," + ",e.jsx("code",{children:"violations[]"})]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Piste dâaudit rendue comme ",e.jsx("code",{children:"conviction_modele_html"})," + le bloc ",e.jsx("code",{children:"tracabilite_hypotheses_html"}),"."]}):e.jsxs(e.Fragment,{children:["Audit trail rendered as ",e.jsx("code",{children:"conviction_modele_html"})," + the ",e.jsx("code",{children:"tracabilite_hypotheses_html"})," block."]})})]})]})]}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Qui décide vraiment CALL / CONSIDER / MONITOR / PASS.":"Who actually decides CALL / CONSIDER / MONITOR / PASS."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Le Module 5 du GP Synthétique (qualitatif) fixe ",e.jsx("code",{children:"conviction_synthesis.decision"})," en amont et cette valeur est la source de vérité â elle est propagée à travers /build-model comme ",e.jsx("code",{children:"returns.gp_decision_used"})," et pondère par probabilité la VAN des synergies (Ã1.0 / Ã0.7 / Ã0.4 / Ã0.1) via ",e.jsx("code",{children:"gp_conviction_coefficient"}),". /build-model émet un verdict quant ",e.jsx("em",{children:"factuel"})," séparé (",e.jsx("code",{children:"thesis_alignment.financial_verdict"}
3221)," = HURDLES_PASSED / OUT_OF_HURDLE pour le stratégique, CALL / CONSIDER / MONITOR / PASS agrégé pour VC/LBO) et fait apparaître les écarts de hurdle dans ",e.jsx("code",{children:"unit_economics.warnings"}),". La réconciliation entre les deux est le travail du LLM narratif BP2 (module 1702) â /build-model lui-même nâécrase jamais la décision qualitative du GP."]}):e.jsxs(e.Fragment,{children:["The GP Synthetique Module 5 (qualitative) sets ",e.jsx("code",{children:"conviction_synthesis.decision"})," upstream and that value is the source of truth â it is propagated through /build-model as ",e.jsx("code",{children:"returns.gp_decision_used"})," and probability-weights the synergy NPV (Ã1.0 / Ã0.7 / Ã0.4 / Ã0.1) via ",e.jsx("code",{children:"gp_conviction_coefficient"}),". /build-model emits a separate ",e.jsx("em",{children:"factual"})," quant verdict (",e.jsx("code",{children:"thesis_alignment.financial_verdict"})," = HURDLES_PASSED / OUT_OF_HURDLE for strategic, CALL / CONSIDER / MONITOR / PASS rolled-up for VC/LBO) and surfaces hurdle gaps in ",e.jsx("code",{children:"unit_economics.warnings"}),". Reconciliation between the two is the job of the BP2 narrative LLM (module 1702) â /build-model itself never overwrites the GP qualitative decision."]})})]}),e.jsxs("div",{className:"callout warning",children:[e.jsx("strong",{children:r?"Priorité de fallback des benchmarks.":"Benchmark fallback priority."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Priorité de source par métrique (haut â bas) : ",e.jsx("strong",{children:"financial_model_setup"})," (conviction Module 5, Priorité 0) â ",e.jsx("strong",{children:"données réelles Exa"})," (revenue_annual_eur, arr_eur, ebitda_pct, gross_margin_pct, annual_churn_pct, nrr_pct, customers_count, headcount par dept, plans de pricing) â ",e.jsx("strong",{children:"proxies dérivés"})," (pricing à 12, avis G2 à 50, rétro-ingénierie du headcount) â ",e.jsx("strong",{children:"benchmark sectoriel"})," depuis ",e.jsx("code",{children:"sector_profile"})," interpolé par ",e.jsx("code",{children:"company_quality"}),". Si ",e.jsx("code",{children:"financial_model_setup"})," est absent, la priorité se réduit à Exa â proxy â benchmark et ",e.jsx("code",{children:"conviction_status"})," est mis à NO_QUALITATIVE_INPUT."]}):e.jsxs(e.Fragment,{children:["Per-metric source priority (high â low): ",e.jsx("strong",{children:"financial_model_setup"})," (Module 5 conviction, Priority 0) â ",e.jsx("strong",{children:"real Exa data"})," (revenue_annual_eur, arr_eur, ebitda_pct, gross_margin_pct, annual_churn_pct, nrr_pct, customers_count, headcount by dept, pricing plans) â ",e.jsx("strong",{children:"derived proxies"})," (pricing à 12, G2 reviews à 50, headcount reverse-engineering) â ",e.jsx("strong",{children:"sector benchmark"})," from ",e.jsx("code",{children:"sector_profile"})," interpolated by ",e.jsx("code",{children:"company_quality"}),". If ",e.jsx("code",{children:"financial_model_setup"})," is absent the priority collapses to Exa â proxy â benchmark and ",e.jsx("code",{children:"conviction_status"})," is set to NO_QUALITATIVE_INPUT."]})})]}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Types de mémo.":"Memo types."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Fixé par le module Make 1707 dans le corps de la requête. ",e.jsx("code",{children:"fast"})," et ",e.jsx("code",{children:"quick"})," sautent entièrement Exa (cost gate) â les comparables retombent sur le stub de benchmark sectoriel et ",e.jsx("code",{children:"financial_intel_html"})," ne contient aucune ligne Exa. ",e.jsx("code",{children:"detailed"})," exécute le pipeline complet, y compris ",e.jsx("code",{children:"search_target_financials"})," et ",e.jsx("code",{children:"find_comparables"})," avec lâextracteur OpenRouter."]}):e.jsxs(e.Fragment,{children:["Set by Make module 1707 in the request body. ",e.jsx("code",{children:"fast"})," and ",e.jsx("code",{children:"quick"})," skip Exa entirely (cost gate) â comparables fall back to the sector-benchmark stub and ",e.jsx("code",{children:"financial_intel_html"}
3221)," contains no Exa rows. ",e.jsx("code",{children:"detailed"})," runs the full pipeline including ",e.jsx("code",{children:"search_target_financials"})," and ",e.jsx("code",{children:"find_comparables"})," with the OpenRouter extractor."]})})]}),e.jsx("span",{id:"s03-decision-engine",className:"doc-anchor"}),e.jsxs("h3",{className:"doc-h3",children:[r?"Comment Stan décide":"How Stan makes decisions"," ",e.jsx("span",{className:"doc-tag",children:"MAKE PROMPT ZONE"})]}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Quand un lead passe le single_gate des moteurs de sourcing, il nâest pas simplement « analysé » â il passe par un comité dâinvestissement entièrement automatisé. Derrière le verdict, un pipeline structuré : trois ",e.jsx("strong",{children:"jobs"})," préparatoires, six ",e.jsx("strong",{children:"modules"})," (0 à 5), puis un challenger ",e.jsx("strong",{children:"Avocat du Diable"})," qui attaque la synthèse avant que le verdict ne vous parvienne. Stan teste jusquâà 5 thèses dâacquisition en parallèle, à égalité â aucun angle nâest favorisé par défaut. Si vous avez désigné un acquéreur potentiel, un septième module â un ",e.jsx("strong",{children:"Synergy Analyst"})," tournant sur Claude Sonnet â tourne en parallèle pour quantifier la logique 1+1=3. Tout le pipeline prend moins de 90 secondes par deal. Chaque CALL qui vous parvient arrive avec 3 vérifications obligatoires émises par lâAvocat du Diable â vous savez exactement quoi challenger lors dâun appel de 15 minutes."]}):e.jsxs(e.Fragment,{children:[`When a lead passes the single_gate of the sourcing engines, it isn't simply "analyzed" â it goes through a fully automated investment committee. Behind the verdict is a structured pipeline: three preparatory `,e.jsx("strong",{children:"jobs"}),", six ",e.jsx("strong",{children:"modules"})," (0 through 5), then a ",e.jsx("strong",{children:"Devil's Advocate"})," challenger that attacks the synthesis before the verdict reaches you. Stan tests up to 5 acquisition theses in parallel, equally â no angle is favoured by default. If you've designated a potential acquirer, a seventh module â a ",e.jsx("strong",{children:"Synergy Analyst"})," running on Claude Sonnet â runs in parallel to quantify the 1+1=3 logic. The whole pipeline takes under 90 seconds per deal. Every CALL that reaches you arrives with 3 mandatory verifications emitted by the Devil's Advocate â you know exactly what to challenge during a 15-minute call."]})}),e.jsx("span",{id:"s03-decision-jobs",className:"doc-anchor"}),e.jsx("h4",{className:"doc-h4",children:r?"Jobs 1â3 (gates & calibrage)":"Jobs 1â3 (gates & calibration)"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Job"}),e.jsx("th",{children:r?"But":"Purpose"}),e.jsx("th",{children:r?"Résultat":"Outcome"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Job 1 â Data Quality Gate"})}),e.jsx("td",{children:r?"Ãvalue la suffisance sur 5 dimensions : fondamentaux de la société, intelligence marché, fondateur/équipe, finances, contexte stratégique":"Assess sufficiency across 5 dimensions: company fundamentals, market intelligence, founder/team, financials, strategic context"}),e.jsx("td",{children:r?"Bloque lâaval si les données sont insuffisantes ; signale ce qui manque":"Block downstream if data is insufficient; flag what's missing"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Job 2 â Hard Exclusion Detection"})}),e.jsx("td",{children:r?"Applique les gates binaires de la thèse : stades, secteurs, géographies, business models, patterns de pre-mortem":"Apply binary gates from the thesis: stages, sectors, geographies, business models, pre-mortem patterns"}),e.jsx("td",{children:r?"Auto-PASS avec motif si un gate se déclenche":"Auto-PASS with reason if any gate trips"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"Job 3 â Extract & Calibrate (Step 0: Angle Selection)"})}),e.jsx("td",{children:r?"Identifie quels angles actifs le deal pourrait matcher ; calibre les paramètres par-angle avant le deep-dive":"Identify which active angles the deal could match; calibrate per-angle parameters before deep-dive"}),e.jsx("td",{children:r?"Setup de test à égalité pour tous les angles candidats":"Equal-test setup for all candidate angles"})]})]})]}),e.jsx("span",{id:"s03-decision-modules",className:"doc-anchor"}),e.jsx("h4",{className:"doc-h4",children:r?"Modules 0â5 + Avocat du Diable + Synergy Analyst (multi-angles, spécialistes)":"Modules 0â5 + Devil's Advocate + Synergy Analyst (multi-angle, specialists)"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Module"}),e.jsx("th",{children:r?"ID du module Make":"Make module ID"}),e.jsx("th",{children:r?"Ce quâil fait":"What it does"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"Module 0 v2"})," â Fund Thesis & Relevance Scoring"]}),e.jsx("td",{children:e.jsx("code",{children:"1620"})}),e.jsx("td",{children:r?"5 sous-jobs : thesis match, sector fit, stage fit, model fit, geography fit. Produit des scores de pertinence par-angle. Calibre jusquâà 5 angles testés en parallèle â pas de pré-sélection.":"5 sub-jobs: thesis match, sector fit, stage fit, model fit, geography fit. Produces per-angle relevance scores. Calibrates up to 5 angles tested in parallel â no pre-pick."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"Module 1"})," â Parallel Multi-Angle Deep-Dive"]}),e.jsx("td",{children:"â"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Génère une Q&R par-angle avec budget égal. Chaque angle actif reçoit le même nombre de questions dâinvestigation. Préfixes utilisés : ",e.jsx("code",{children:"[ANGLE: x]"})," · ",e.jsx("code",{children:"[UNIVERSAL]"})," · ",e.jsx("code",{children:"[DIAGNOSTIC]"}),"."]}):e.jsxs(e.Fragment,{children:["Generate per-angle Q&A with equal budget. Each active angle gets the same number of investigative questions. Prefixes used: ",e.jsx("code",{children:"[ANGLE: x]"})," · ",e.jsx("code",{children:"[UNIVERSAL]"})," · ",e.jsx("code",{children:"[DIAGNOSTIC]"}),"."]})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"Module 2"})," â Specialist Reports (Ã3)"]}),e.jsx("td",{children:e.jsx("code",{children:"1621 · 1622 · 1623"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"1A · Market & Timing"})," (le marché est-il vivant, le timing est-il bon ?) · ",e.jsx("strong",{children:"1B · Moat & Competition"})," (quâest-ce qui protège la cible, qui attaque ?) · ",e.jsx("strong",{children:"1C · Founder Financial Health & Risk + Overlooked Factor"})," (4 sous-jobs : questions fondateur, contrôle de santé financière, anti-patterns, lâinsight non évident quâun analyste générique raterait). Trois analystes indépendants, même structure sur chaque deal â les verdicts restent comparables sur tout le pipeline."]}):e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"1A · Market & Timing"})," (is the market alive, is the timing right?) · ",e.jsx("strong",{children:"1B · Moat & Competition"})," (what protects the target, who is attacking?) · ",e.jsx("strong",{children:"1C · Founder Financial Health & Risk + Overlooked Factor"})," (4 sub-jobs: founder questions, financial health check, anti-p
3221atterns, the non-obvious insight a generic analyst would miss). Three independent analysts, same structure on every deal â verdicts stay comparable across the pipeline."]})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"Module 3"})," â Synthesis & Triangulation (Synthetic GP)"]}),e.jsx("td",{children:e.jsx("code",{children:"1624"})}),e.jsx("td",{children:r?e.jsx(e.Fragment,{children:"Modérateur de comité dâinvestissement senior. Thesis Scorecard 2.0 (hybride par-angle), Strategic Fit Matrix, Neural Command Line (sélectionne lâangle dominant depuis les résultats de Q&R par-angle â pas depuis le classement de pertinence du Module 0). Détecte le fatal flaw, émet un CALL/CONSIDER/MONITOR/PASS préliminaire."}):e.jsx(e.Fragment,{children:"Senior Investment Committee Moderator. Thesis Scorecard 2.0 (hybrid per-angle), Strategic Fit Matrix, Neural Command Line (selects dominant angle from per-angle Q&A results â not from Module 0 relevance ranking). Detects fatal flaw, emits preliminary CALL/CONSIDER/MONITOR/PASS."})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"Module 4"})," â ",r?"Avocat du Diable (challenger automatique)":"Devil's Advocate (challenger automatique)"]}),e.jsx("td",{children:e.jsx("code",{children:"1625"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Attaque la synthèse (pas la société). Identifie lâhypothèse la plus dangereuse, la contre-preuve ignorée, la conclusion trop confiante. Ãmet ",e.jsx("strong",{children:"3 vérifications « Before You Act » obligatoires"})," + ajustement du verdict. Tourne sur chaque deal â ce nâest pas le CEO qui challenge, câest un module automatisé."]}):e.jsxs(e.Fragment,{children:["Attacks the synthesis (not the company). Identifies the most dangerous assumption, the counterevidence ignored, the overconfident conclusion. Emits ",e.jsx("strong",{children:'3 mandatory "Before You Act" verifications'})," + verdict adjustment. Runs on every deal â this is not the CEO challenging, it's an automated module."]})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"Module 5"})," â Verdict & Memo (gp_comment)"]}),e.jsx("td",{children:e.jsx("code",{children:"1626"})}),e.jsx("td",{children:r?e.jsx(e.Fragment,{children:"Combine la synthèse GP + les constats de lâAvocat du Diable. Rend le verdict final dans la Neural Command Line (ANGLE_ID + scoring + décision) + mémo HTML structuré. Le M&A 10-Point Deal-Killer Framework sâapplique conditionnellement pour les modes M&A."}):e.jsx(e.Fragment,{children:"Combines GP synthesis + Devil's Advocate findings. Renders the final verdict in the Neural Command Line (ANGLE_ID + scoring + decision) + structured HTML memo. M&A 10-Point Deal-Killer Framework applied conditionally for M&A modes."})})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:"Synergy Analyst"})," â ",r?"quantification 1+1=3 (parallèle, conditionnel)":"1+1=3 quantification (parallel, conditional)"]}),e.jsx("td",{children:e.jsx("code",{children:"1327"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Tourne ",e.jsx("strong",{children:"seulement si Potential Acquirer â vide"}),". Module Claude Sonnet dédié tournant en parallèle des 3 spécialistes. Lit ",e.jsx("code",{children:"acquirer_context"})," (acquirer_arr_eur, synergy_horizon_years, 3-5 cross_sell_targets), groupe les synergies en 4 familles (Soft Revenue · Hard Cost · Defensive Moat · Structural), produit 8+ instances par mémo avec des notes dâimpact (High/Medium/Low â multiplicateurs 1.5Ã/1.0Ã/0.5Ã). Sortie injectée dans le mémo final du Module 5."]}):e.jsxs(e.Fragment,{children:["Runs ",e.jsx("strong",{children:"only if Potential Acquirer â empty"}),". Dedicated Claude Sonnet module running in parallel to the 3 specialists. Reads ",e.jsx("code",{children:"acquirer_context"})," (acquirer_arr_eur, synergy_horizon_years, 3-5 cross_sell_targets), groups synergies into 4 families (Soft Revenue · Hard Cost · Defensive Moat · Structural), produces 8+ instances per memo with impact ratings (High/Medium/Low â 1.5Ã/1.0Ã/0.5à multipliers). Output injected into Module 5 final memo."]})})]})]})]}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Test multi-angles à égalité.":"Multi-angle equal testing."}),e.jsx("p",{children:r?"Jusquâà 5 thèses dâacquisition sont testées avec un budget dâinvestigation égal. La Strategic Fit Matrix du Module 3 choisit lâangle dominant depuis les résultats de Q&R par-angle â le classement de pertinence du Module 0 est informatif seulement et ne sert que de départage final. Lâopportunité cross-angle émerge naturellement quand 2+ angles ont un taux de confirmation â¥60% et partagent un constat de soutien. Les sorties incluent des glossaires conscients de la langue (FR/EN) et des formats de matrice structurés pour comparer les angles dâun coup dâÅil.":"Up to 5 acquisition theses are tested with equal investigative budget. The Strategic Fit Matrix in Module 3 picks the dominant angle from per-angle Q&A results â Module 0's relevance ranking is informational only and serves only as a final tie-breaker. Cross-angle opportunity emerges naturally when 2+ angles have â¥60% confirmation rate and share a supporting finding. Outputs include language-aware glossaries (FR/EN) and structured matrix formats so you can compare angles at a glance."})]}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Ce qui tourne où â architecture Make â Modal.":"What runs where â Make â Modal architecture."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Les Modules 0 à 5 (les 6 LLM ci-dessus) et le Synergy Analyst tournent dans le ",e.jsx("strong",{children:"scénario Make 3869328"}),". Le modèle financier en aval (",e.jsx("code",{children:"/build-model"}),") et lâassemblage HTML du mémo (",e.jsx("code",{children:"/build-memo"}),") sont des ",e.jsx("strong",{children:"services Python déterministes sur Modal â pas des LLM"}),". Câest intentionnel : un CFO doit pouvoir reproduire chaque chiffre du modèle financier, ligne par ligne, sans variance LLM. Le Weekly Evolution Engine (",e.jsx("code",{children:"/directive/thesis-update"}),") est de nouveau LLM (TEE sur OpenRouter Gemini 2.5 Flash) mais sa sortie est validée c
3221ontre 13 règles de schéma Pydantic avant que toute thèse ne soit patchée. Planning : Make.com possède le cron (chaque jour ouvré 7-8h30 UTC pour le sourcing, chaque lundi 16h UTC pour lâévolution) â les endpoints Modal sâexécutent à la demande quand on les appelle."]}):e.jsxs(e.Fragment,{children:["Modules 0 through 5 (the 6 LLMs above) and the Synergy Analyst run inside ",e.jsx("strong",{children:"Make scenario 3869328"}),". The downstream financial model (",e.jsx("code",{children:"/build-model"}),") and HTML memo assembly (",e.jsx("code",{children:"/build-memo"}),") are ",e.jsx("strong",{children:"deterministic Python services on Modal â not LLMs"}),". This is intentional: a CFO needs to be able to reproduce every number in the financial model, line by line, without LLM variance. The Weekly Evolution Engine (",e.jsx("code",{children:"/directive/thesis-update"}),") is back to LLM (TEE on OpenRouter Gemini 2.5 Flash) but its output is validated against 13 Pydantic schema rules before any thesis is patched. Schedule: Make.com owns the cron (every weekday 7-8h30 UTC for sourcing, every Monday 16h UTC for evolution) â Modal endpoints execute on demand when called."]})})]}),e.jsx("span",{id:"s03-verdict-engine",className:"doc-anchor"}),e.jsx("h4",{className:"doc-h4",children:"Verdict & Neural Command Line"}),e.jsx("p",{className:"doc-text",children:r?e.jsx(e.Fragment,{children:"Le verdict nâest pas écrit en roue libre. Chaque mémo suit un pipeline déterministe â détection du mode, triangulation multi-angles, classification de fit, contrôle deal-killer (M&A uniquement), labellisation du verdict, puis une Neural Command Line (NCL) qui encode lâangle dominant pour les systèmes en aval. La logique ci-dessous est exactement ce qui tourne dans le scénario Make."}):e.jsx(e.Fragment,{children:"The verdict is not written free-form. Every memo follows a deterministic pipeline â mode detection, multi-angle triangulation, fit classification, deal-killer check (M&A only), verdict labelling, then a Neural Command Line (NCL) that encodes the dominant angle for downstream systems. The logic below is exactly what runs in the Make scenario."})}),e.jsx("h5",{className:"doc-h5",children:r?"Step 0A â Mode opératoire":"Step 0A â Operating mode"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Déterminé par le champ ",e.jsx("code",{children:"Potential Acquirer"})," dans les données dâentrée."]}):e.jsxs(e.Fragment,{children:["Determined by the ",e.jsx("code",{children:"Potential Acquirer"})," field in the input data."]})}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Entrée":"Input"}),e.jsx("th",{children:"Mode"}),e.jsx("th",{children:r?"Comportement":"Behaviour"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"Potential Acquirer"})," ",r?"vide":"empty"]}),e.jsx("td",{children:e.jsx("strong",{children:r?"Mode VC":"VC mode"})}),e.jsx("td",{children:r?"GP VC standard. Toute analyse de synergie ignorée.":"Standard VC GP. All synergy analysis ignored."})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"Potential Acquirer"})," ",r?"renseigné":"set"]}),e.jsx("td",{children:e.jsx("strong",{children:r?"Mode M&A":"M&A mode"})}),e.jsx("td",{children:r?"Filtre M&A impitoyable. Framework deal-killer 10 points appliqué.":"Ruthless M&A filter. 10-point deal-killer framework applied."})]})]})]}),e.jsx("h5",{className:"doc-h5",children:r?"Step 0B â Angles testés (égalitaire)":"Step 0B â Angles tested (egalitarian)"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Le Module 0 v2 teste 1 à 5 angles avec un ",e.jsx("strong",{children:"budget de questions K égal par angle"}),". Il nây a pas de primaire/secondaire â chaque angle testé est investigué à la même profondeur. Lâangle dominant pour le verdict est choisi plus tard par la Strategic Fit Matrix, pas par le classement de pertinence du Module 0."]}):e.jsxs(e.Fragment,{children:["Module 0 v2 tests 1 to 5 angles with ",e.jsx("strong",{children:"equal question budget K per angle"}),". There is no primary/secondary â every tested angle is investigated at the same depth. The dominant angle for the verdict is chosen later by the Strategic Fit Matrix, not by Module 0's relevance ranking."]})}),e.jsx("h5",{className:"doc-h5",children:r?"Strategic Fit Matrix â triangulation à 3 sources":"Strategic Fit Matrix â 3-source triangulation"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["La matrice nâest construite que quand ",e.jsx("code",{children:"angles_tested.length ⥠2"}),". Elle triangule trois sources :"]}):e.jsxs(e.Fragment,{children:["The matrix is built only when ",e.jsx("code",{children:"angles_tested.length ⥠2"}),". It triangulates three sources:"]})}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Source"}),e.jsx("th",{children:"Signal"}),e.jsx("th",{children:r?"Rôle":"Role"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"1. Q&R analystes":"1. Analyst Q&A"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Comptes â
/ â / â ï¸ par-angle â ",e.jsx("code",{children:"confirmation_rate"})]}):e.jsxs(e.Fragment,{children:["Per-angle â
/ â / â ï¸ counts â ",e.jsx("code",{children:"confirmation_rate"})]})}),e.jsx("td",{children:r?"Preuves bottom-up des analystes Market / Moat / Founder.":"Bottom-up evidence from Market / Moat / Founder analysts."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"2. Analyse de synergies":"2. Synergy anal
3221ysis"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"synergy_count"}),", ",e.jsx("code",{children:"synergy_weight"})," par-angle, compte HIGH-confidence"]}):e.jsxs(e.Fragment,{children:["Per-angle ",e.jsx("code",{children:"synergy_count"}),", ",e.jsx("code",{children:"synergy_weight"}),", HIGH-confidence count"]})}),e.jsx("td",{children:r?"Logique stratégique spécifique à lâacquéreur. Parsée depuis la sortie du Module 1327.":"Acquirer-specific strategic logic. Parsed from Module 1327 output."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"3. Pertinence Module 0":"3. Module 0 relevance"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"relevance_score"})," par-angle"]}):e.jsxs(e.Fragment,{children:["Per-angle ",e.jsx("code",{children:"relevance_score"})]})}),e.jsx("td",{children:r?"Hypothèse dâancrage. Utilisée uniquement comme départage final.":"Anchor hypothesis. Used only as the final tie-breaker."})]})]})]}),e.jsx("h5",{className:"doc-h5",children:r?"Règles de classification de fit (le premier match gagne)":"Fit classification rules (first match wins)"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Classification"}),e.jsx("th",{children:r?"Déclencheur":"Trigger"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"STRONG_FIT"})}),e.jsxs("td",{children:[e.jsx("code",{children:"confirmation_rate ⥠70%"})," AND (",e.jsx("code",{children:"synergy_count ⥠2"})," OR ",e.jsx("code",{children:"synergy_weight ⥠0.40"}),")"]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"MODERATE_FIT"})}),e.jsxs("td",{children:[e.jsx("code",{children:"confirmation_rate ⥠50%"})," OR ",e.jsx("code",{children:"synergy_count ⥠2"})]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"SPECULATIVE"})}),e.jsxs("td",{children:[e.jsx("code",{children:"confirmation_rate ⥠30%"})," AND ",e.jsx("code",{children:"synergy_count ⥠1"})]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"WEAK_FIT"})}),e.jsx("td",{children:r?"Sous 30% avec ⥠1 synergie, OU ⥠30% avec 0 synergie":"Below 30% with ⥠1 synergy, OR ⥠30% with 0 synergies"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"NO_FIT"})}),e.jsxs("td",{children:[e.jsx("code",{children:"confirmation_rate < 30%"})," AND ",e.jsx("code",{children:"synergy_count == 0"})]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"INSUFFICIENT_DATA"})}),e.jsxs("td",{children:["(â
+ â) < 2 AND ",e.jsx("code",{children:"synergy_count == 0"})]})]})]})]}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Mode dégradé.":"Degraded mode."}),e.jsx("p",{children:r?"Si le Module 1327 ne retourne aucune synergie (chaîne sentinelle ou JSON non parsable), la colonne synergie est retirée et les règles se réduisent à une échelle Q&R seule.":"If Module 1327 returns no synergies (sentinel string or unparsable JSON), the synergy column is dropped and the rules collapse to a Q&A-only ladder."})]}),e.jsx("h5",{className:"doc-h5",children:r?"Persona dâacquéreur â lentille de lecture (pas un override)":"Acquirer persona â reading lens (not override)"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Type dâacquéreur":"Acquirer type"}),e.jsx("th",{children:r?"Lentille dâinterprétation":"Interpretation lens"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"TYPE A â Financier":"TYPE A â Financial"})}),e.jsx("td",{children:r?"Signaux de Q&R plus pondérés. Le poids de synergie compte moins.":"Q&A signals weighted more. Synergy weight matters less."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsxs("strong",{children:["TYPE B â ",r?"Stratégique":"Strategic"]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"synergy_count"})," et ",e.jsx("code",{children:"synergy_weight"})," plus pondérés."]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"synergy_count"})," and ",e.jsx("code",{children:"synergy_weight"})," weighted more."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsxs("strong",{children:["TYPE C â ",r?"Hybride":"Hybrid"]}
3221)}),e.jsx("td",{children:r?"Ãquilibré.":"Balanced."})]})]})]}),e.jsx("h5",{className:"doc-h5",children:r?"Verdict â signal NCL â impact sur la thèse de lâangle":"Verdict â NCL signal â impact on the angle thesis"}),e.jsx("p",{className:"doc-text",children:r?"Chaque verdict émet une Neural Command Line avec un signal typé. Le signal dit au moteur dâévolution du lundi exactement comment muter lâangle qui a déclenché la décision.":"Every verdict emits a Neural Command Line with a typed signal. The signal tells the Monday Evolution Engine exactly how to mutate the angle that triggered the decision."}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Verdict"}),e.jsx("th",{children:"Signal"}),e.jsx("th",{children:"Mode"}),e.jsx("th",{children:r?"Impact sur la thèse de lâangle":"Impact on the angle thesis"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-pass",children:r?"CEO NON (sans note)":"CEO NO (no note)"})}),e.jsx("td",{children:e.jsx("code",{children:"CEO_VETO"})}),e.jsx("td",{children:"VC & M&A"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Clause ",e.jsx("code",{children:"reject_signal"})," immédiate. ",e.jsx("code",{children:"red_flag"})," â ",e.jsx("code",{children:"priority_flags"})," instantanément. ",e.jsx("code",{children:"narrative_alpha"})," NON muté (pas de concept). Convergence : ~6 semaines."]}):e.jsxs(e.Fragment,{children:["Immediate ",e.jsx("code",{children:"reject_signal"})," clause. ",e.jsx("code",{children:"red_flag"})," â ",e.jsx("code",{children:"priority_flags"})," instantly. ",e.jsx("code",{children:"narrative_alpha"})," NOT mutated (no concept). Convergence: ~6 weeks."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-pass",children:r?"CEO NON + note":"CEO NO + note"})}),e.jsx("td",{children:e.jsx("code",{children:"CEO_VETO"})}),e.jsx("td",{children:"VC & M&A"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Idem + ",e.jsx("code",{children:"TOXIC_KEYWORD"})," extrait. ",e.jsx("code",{children:"narrative_alpha.angles"})," réécrit. ",e.jsx("strong",{children:"La plus forte mutation unique du système."})," Convergence : ~2 semaines."]}):e.jsxs(e.Fragment,{children:["Same + ",e.jsx("code",{children:"TOXIC_KEYWORD"})," extracted. ",e.jsx("code",{children:"narrative_alpha.angles"})," rewritten. ",e.jsx("strong",{children:"Strongest single mutation in the system."})," Convergence: ~2 weeks."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-call",children:r?"CEO OUI + note":"CEO YES + note"})}),e.jsx("td",{children:e.jsx("code",{children:"CEO_YES"})}),e.jsx("td",{children:"VC & M&A"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"WINNING_KEYWORD"})," extrait. ",e.jsx("code",{children:"green_flags"})," renforcés. ",e.jsx("code",{children:"gold_anchor_pool"})," tourné. Mutation positive de ",e.jsx("code",{children:"narrative_alpha"}),". ",e.jsx("strong",{children:"Calibrage positif â enseigne à quoi ressemble lâexcellence."})]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"WINNING_KEYWORD"})," extracted. ",e.jsx("code",{children:"green_flags"})," reinforced. ",e.jsx("code",{children:"gold_anchor_pool"})," rotated. ",e.jsx("code",{children:"narrative_alpha"})," positive mutation. ",e.jsx("strong",{children:"Positive calibration â teaches what great looks like."})]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-call",children:"CALL"})}),e.jsx("td",{children:e.jsx("code",{children:"CALL"})}),e.jsx("td",{children:"VC & M&A"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Un pattern confirme la thèse de cet angle. Lâoptimisation cible ses ",e.jsx("code",{children:"sectors_plain"}),", ",e.jsx("code",{children:"competitor_anchors"})," et ",e.jsx("code",{children:"exa_queries"}),"."]}):e.jsxs(e.Fragment,{children:["A pattern confirms this angle's thesis. Optimisation targets its ",e.jsx("code",{children:"sectors_plain"}),", ",e.jsx("code",{children:"competitor_anchors"}),", and ",e.jsx("code",{children:"exa_queries"}),"."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-call",children:"CALL + synergies"})}),e.jsx("td",{children:e.jsx("code",{children:"SYNERGY_CALL"})}),e.jsx("td",{children:"M&A"}),e.jsx("td",{children:r?"Fortes synergies de portefeuille â même mécanique que CALL pour cet angle, plus un signal de synergie.":"Strong portfolio synergies â same mechanic as CALL for this angle, plus a synergy signal."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-consider",children:r?"CONSIDER â risque":"CONSIDER â risk"})}),e.jsx("td",{children:e.jsx("code",{children:"RISK"})}),e.jsx("td",{children:"VC & M&A"}),e.jsx("td",{children:r?"Risque identifié sur cet angle. Red soft flag â3pts sur lâangle. Se résout en PASS si le signal ne se lève pas.":"Risk identified on this angle. Red soft flag â3pts on the angle. Resolves into a PASS if the signal doesn't clear."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-monitor",children:"MONITOR"})}),e.jsx("td",{children:e.jsx("code",{children:"MONITOR"})}),e.jsx("td",{children:"VC & M&A"}),e.jsx("td",{children:r?"Trop tôt pour cet angle â ou trop tard (société déjà trop grosse, mais vous en voulez une comme elle). Pas de mutation de thè
3221se.":"Too early for this angle â or too late (company already too big, but you want another like it). No thesis mutation."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-pass",children:r?"PASS â nouveau profil":"PASS â new profile"})}),e.jsx("td",{children:e.jsx("code",{children:"POISON"})}),e.jsx("td",{children:"VC & M&A"}),e.jsx("td",{children:r?"Profil indésirable pour cet angle. Filtre durci, poison anchor mis à jour, poids â5pts sur lâangle.":"Undesirable profile for this angle. Filter hardened, poison anchor updated, weight â5pts on the angle."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-pass",children:r?"PASS â exclusion connue":"PASS â known exclusion"})}),e.jsx("td",{children:e.jsx("code",{children:"BLOCK"})}),e.jsx("td",{children:"VC & M&A"}),e.jsx("td",{children:r?"Le filtre de lâangle fonctionne. Aucun changement de sourcing sur aucun angle.":"The angle's filter is working. No sourcing change on any angle."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-pass",children:r?"PASS â conflit de portefeuille":"PASS â portfolio conflict"})}),e.jsx("td",{children:e.jsx("code",{children:"SYNERGY_BLOCK"})}),e.jsx("td",{children:"M&A"}),e.jsx("td",{children:r?"Conflit direct de portefeuille. Identique à BLOCK côté sourcing â zéro changement.":"Direct portfolio conflict. Identical to BLOCK on the sourcing side â zero change."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:r?"Données insuffisantes":"Insufficient data"}),e.jsx("td",{children:e.jsx("code",{children:"GAP"})}),e.jsx("td",{children:"VC & M&A"}),e.jsx("td",{children:r?"Log seulement. Pas de mutation de thèse sur aucun angle.":"Log only. No thesis mutation on any angle."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:r?"Société ratée":"Company missed"}),e.jsx("td",{children:e.jsx("code",{children:"MARKET_VALIDATION"})}),e.jsx("td",{children:"VC & M&A"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Angle mort prouvé sur cet angle. Secteur ajouté à son ",e.jsx("code",{children:"sectors_plain"})," et ",e.jsx("code",{children:"binary_gates.inclusions"}),"."]}):e.jsxs(e.Fragment,{children:["Blind spot proven on this angle. Sector added to its ",e.jsx("code",{children:"sectors_plain"})," and ",e.jsx("code",{children:"binary_gates.inclusions"}),"."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:r?"Concurrent intéressant":"Interesting competitor"}),e.jsx("td",{children:e.jsx("code",{children:"WATCHLIST"})}),e.jsx("td",{children:"VC & M&A"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Concurrent ajouté aux ",e.jsx("code",{children:"competitor_anchors"})," de lâangle. Graine Exa Similar dès le lendemain."]}):e.jsxs(e.Fragment,{children:["Competitor added to the angle's ",e.jsx("code",{children:"competitor_anchors"}),". Seeds Exa Similar the next day."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:r?"Verdict overridé":"Verdict overridden"}),e.jsx("td",{children:e.jsx("code",{children:"OVERRIDE"})}),e.jsx("td",{children:"VC & M&A"}),e.jsx("td",{children:r?"Votre jugement remplace la machine. Priorité absolue. Effet immédiat sur cet angle â pas de seuil de fréquence.":"Your judgment replaces the machine. Absolute priority. Immediate effect on this angle â no frequency threshold."})]})]})]}),e.jsx("h5",{className:"doc-h5",children:r?"M&A 10-Point Deal-Killer Framework (mode M&A uniquement)":"M&A 10-Point Deal-Killer Framework (M&A mode only)"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Exécuté contre lâangle dominant choisi par la matrice. Chaque flag exige une ",e.jsx("strong",{children:"preuve confirmée"})," â les risques suspectés sont consignés comme ",e.jsx("code",{children:"MISSING_DATA"}),", jamais flaggés."]}):e.jsxs(e.Fragment,{children:["Run against the dominant angle chosen by the matrix. Each flag requires ",e.jsx("strong",{children:"confirmed evidence"})," â suspected risks are logged as ",e.jsx("code",{children:"MISSING_DATA"}),", never flagged."]})}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"#"}),e.jsx("th",{children:"Deal-killer"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:"1"}),e.jsx("td",{children:"Side-Quest"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"2"}),e.jsx("td",{children:"Build vs. Buy"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"3"}),e.jsx("td",{children:"ICP Mismatch"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"4"}),e.jsx("td",{children:"Cannibalization"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"5"}),e.jsx("td",{children:"Tech-Stack / Integration"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"6"}),e.jsx("td",{children:"Margin Gravity"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"7"}),e.jsx("td",{children:"Empty Shell"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"8"}),e.jsx("td",{children:"Antitrust / Regulatory"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"9"}),e.jsx("td",{children:"House of Cards"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"10"}),e.jsx("td",{children:"Culture Clash"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"â
"}),e.jsx("td",{children:r?"The Escape Hatch (risques fatals idiosyncrasiques)":"The Escape Hatch (idiosyncratic fatal risks)"})]})]})]}),e.jsx("h5",{className:"doc-h5",children:r?"Numérotation dynamique des sections â pas de [5.5] orphelin":"Dynamic section numbering â no orphan [5.5]"}),e.jsx("p",{className:"doc-text",children:r?"La section 5 du mémo varie selon décision à nombre dâangles testés :":"The memo's section 5 varies by decision à number of angles tested:"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Cas":"Case"}),e.jsx("th",{children:r?"Décision":"Decision"}),e.jsx("th",{children:r?"Angles testés":"Angles tested"}),e.jsx("th",{children:r?"Sections rendues":"Rendered sections"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"A"})}),e.jsx("td",{children:"CONSIDER / MONITOR"}),e.jsx("td",{children:"⥠2"}),e.jsx("td",{children:"[5] Next Action · [5.5] Holistic Angle Selection · [6] Neural Command Line"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"B"})}),e.jsx("td",{children:"CALL / PASS"}),e.jsx("td",{children:"⥠2"}),e.jsx("td",{children:r?"[5] Holistic Angle Selection (renommé depuis [5.5]) · [6] Neural Command Line":"[5] Holistic Angle Selection (renamed from [5.5]) · [6] Neural Command Line"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"C"})}),e.jsx("td",{children:"CALL / PASS"}),e.jsx("td",{children:"1"}),e.jsx("td",{children:r?"[6] Neural Command Line seulement â pas de [5]":"[6] Neural Command Line only â no [5]"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"D"})}),e.jsx("td",{children:"CONSIDER / MONITOR"}),e.jsx("td",{children:"1"}),e.jsx("td",{children:"[5] Next Action · [6] Neural Command Line"})]})]})]}),e.jsx("h5",{className:"doc-h5",children:r?"Auto-revue de la scorecard â 4 contrôles obligatoires":"Scorecard self-review â 4 mandatory checks"}),e.jsx("p",{className:"doc-text",children:r?"Avant de clore le JSON, le modèle exécute ces contrôles et re-rend si lâun échoue :":"Before closing the JSON, the model runs these checks and re-renders if any fail
3221s:"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Contrôle":"Check"}),e.jsx("th",{children:r?"Règle":"Rule"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"1 â Hard Rule 7"})}),e.jsx("td",{children:r?"Un sous-bloc [2.1.X] par angle dans la matrice. Si [2.0] a N lignes, [2.1.Aâ¦N] doivent tous se rendre.":"One [2.1.X] sub-block per angle in the matrix. If [2.0] has N rows, [2.1.Aâ¦N] must all render."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"2 â Hard Rule 8"})}),e.jsx("td",{children:r?"[2.3] ⥠25 puces · [2.4] ⥠11 puces · [2.5] exactement 4 attaques, chacune avec 3 sous-puces.":"[2.3] ⥠25 bullets · [2.4] ⥠11 bullets · [2.5] exactly 4 attacks, each with 3 sub-bullets."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"3 â Hard Rule 9"})}),e.jsx("td",{children:r?"La numérotation de la section 5 correspond au tableau Cas A/B/C/D ci-dessus. Pas de [5.5] orphelin.":"Section 5 numbering matches the Case A/B/C/D table above. No orphan [5.5]."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"4 â Nombre de constats":"4 â Finding count"})}),e.jsx("td",{children:r?"Total â
+â+â ï¸ = (K à angles_tested à 3) + (U à 3). Pour K=3, N=3, U=2 â 33 constats.":"Total â
+â+â ï¸ = (K à angles_tested à 3) + (U à 3). For K=3, N=3, U=2 â 33 findings."})]})]})]}),e.jsxs("div",{className:"callout success",children:[e.jsx("strong",{children:r?"Neural Command Line â toujours en dernier.":"Neural Command Line â always last."}),e.jsx("p",{children:r?"La section [6] rend toujours lâangle dominant comme une NCL lisible par machine. Câest le passage de relais au Weekly Evolution Engine (étape 05), qui agrège les NCL sur toutes les décisions pour muter les poids dâangle, resserrer les filtres durs et mettre à jour les requêtes de sourcing.":"Section [6] always renders the dominant angle as a machine-readable NCL. This is the handoff to the Weekly Evolution Engine (step 05), which aggregates NCLs across decisions to mutate angle weights, tighten hard filters, and update sourcing queries."})]}),e.jsx("span",{id:"s03-override",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"Votre interface â OUI ou NON sur les top picks":"Your interface â YES or NO on top picks"}),e.jsx("p",{className:"doc-text",children:r?"Stan produit tous les verdicts de façon autonome, sur 6 dimensions qualitatives. La grande majorité ne requiert rien de vous â ils alimentent directement le moteur dâévolution.":"Stan produces all verdicts autonomously, across 6 qualitative dimensions. The vast majority require nothing from you â they feed the evolution engine directly."}),e.jsx("p",{className:"doc-text",children:r?"Votre interface ne sâactive que quand Stan a identifié un deal particulièrement intéressant : une société qui a passé tous les filtres, reçu un mémo complet et un modèle financier, et que Stan juge digne dâêtre poursuivie immédiatement.":"Your interface activates only when Stan has identified a particularly interesting deal: a company that passed every filter, received a full memo and financial model, and that Stan considers worth pursuing immediately."}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Vous avez ",e.jsx("strong",{children:"5 façons de répondre OUI ou NON"})," :"]}):e.jsxs(e.Fragment,{children:["You have ",e.jsx("strong",{children:"5 ways to answer YES or NO"}),":"]})}),e.jsx("ol",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Email quotidien"})," â bouton OUI · NON directement dans lâemail"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Email hebdo"})," â OUI · NON avec les décisions en attente mises en avant"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Place Chat"})," â votre dashboard de deal flow"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Stan Chat"})," â OUI · NON dans la sidebar du mémo (panneau droit)"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Sidebar du mémo"})," â OUI · NON dans le mémo HTML (panneau gauche)"]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Daily email"})," â YES · NO button directly in the email"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Weekly email"})," â YES · NO with pending decisions highlighted"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Place Chat"})," â your deal flow dashboard"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Stan Chat"})," â YES · NO in the memo sidebar (right panel)"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Memo sidebar"})," â YES · NO in the HTML memo (left panel)"]})]})}),e.jsx("p",{className:"doc-text",children:r?"Dans tous les cas, la décision est sauvegardée immédiatement dans Airtable. Une zone de note sâouvre â optionnelle, mais une ligne double la vitesse de convergence.":"In every case, the decision is saved immediately to Airtable. A note box opens â optional, but one line doubles convergence speed."}),e.jsx("p",{className:"doc-text",children:r?"Les décisions ouvertes portent des échéances dures appliquées par le système : CONSIDER se résout dès que le signal manquant se lève (ou devient un PASS), MONITOR a un checkpoint à 90 jours selon que la cible devient opportune (trop tôt) ou quâun équivalent apparaît (trop tard â société déjà trop grosse, mais vous en voulez une comme elle). Lâemail hebdo du lundi liste chaque décision ouverte avec son échéance pour que rien ne passe à la trappe silencieusement.":"Open decisions carry hard deadlines enforced by the system : CONSIDER resolves once the missing signal clears (or it becomes a PASS), MONITOR has a 90-day checkpoint whether the target becomes timely (too early) or an equivalent appears (too late â company already too big, but you want another like it). The Monday
3221weekly email lists every open decision with its deadline so nothing slips silently."}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"OUI"})," â Stan rédige lâapproche immédiatement. Proplace OS : vous ou votre équipe lâenvoyez. Proplace+ : votre Corporate Developer contacte la société en votre nom."]}):e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"YES"})," â Stan drafts the outreach immediately. Proplace OS: you or your team send it. Proplace+: your Corporate Developer contacts the company in your name."]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"NON"})," â signal ",e.jsx("code",{children:"CEO_VETO"})," déclenché. La logique de qualification de Stan mise à jour avant le run du lundi. Votre NON reprogramme ce que Stan considère comme un top pick sur lâangle qui a produit ce deal."]}):e.jsxs(e.Fragment,{children:[e.jsx("strong",{children:"NO"})," â ",e.jsx("code",{children:"CEO_VETO"})," signal triggered. Stan's qualification logic updated before Monday's run. Your NO reprograms what Stan considers a top pick on the angle that produced this deal."]})}),e.jsx("p",{className:"doc-text",children:r?"Les 6 dimensions ci-dessous sont ce que Stan évalue en interne pour produire son verdict. Vous ne les notez pas. Vous répondez juste OUI ou NON au résultat.":"The 6 dimensions below are what Stan evaluates internally to produce its verdict. You don't score them. You just respond YES or NO to the result."}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Dimension"}
3221),e.jsx("th",{children:r?"Ce quâelle capture":"What it captures"})]})}),e.jsx("tbody",{children:S5.map(l=>{const d=r?B5(l):l;return e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:d.label})}),e.jsx("td",{children:d.detail})]},l.label)})})]}),e.jsxs("div",{className:"verdicts-grid",children:[e.jsxs("div",{className:"verdict v-call",children:[e.jsx("div",{className:"verdict-h",children:r?"ð¢ Top pick de Stan â VOTRE INTERFACE":"ð¢ Stan's top pick â YOUR INTERFACE"}),e.jsx("div",{className:"verdict-p",children:r?e.jsxs(e.Fragment,{children:["La plus forte conviction de Stan. Vous parvient via email quotidien/hebdo, Place Chat, sidebar du mémo. Si encore ouvert le lundi : listé en haut du centre de commande hebdo avec son échéance. OUI â approche. NON â ",e.jsx("code",{children:"CEO_VETO"})," â thèse mutée par le moteur dâévolution à 16h UTC."]}):e.jsxs(e.Fragment,{children:["Stan's highest conviction. Reaches you via daily/weekly email, Place Chat, memo sidebar. If still open Monday: listed at the top of the weekly command center with its deadline. YES â outreach. NO â ",e.jsx("code",{children:"CEO_VETO"})," â thesis mutated by the Evolution Engine at 4 PM UTC."]})})]}),e.jsxs("div",{className:"verdict v-consider",children:[e.jsx("div",{className:"verdict-h",children:r?"ð¡ Stan : en revue â AUCUNE ACTION REQUISE":"ð¡ Stan: under review â NO INPUT REQUIRED"}),e.jsx("div",{className:"verdict-p",children:r?"Doutes identifiés. Sâauto-archive si aucun nouveau signal.":"Doubts identified. Auto-archives if no new signal."})]}),e.jsxs("div",{className:"verdict v-monitor",children:[e.jsx("div",{className:"verdict-h",children:r?"ðµ Stan : sous surveillance â AUCUNE ACTION REQUISE":"ðµ Stan: monitoring â NO INPUT REQUIRED"}),e.jsx("div",{className:"verdict-p",children:r?"Pertinent mais pas opportun â soit trop tôt (marché pas prêt), soit trop tard (société déjà trop grosse, mais vous en voulez une comme elle). Alerte jalon posée.":"Relevant but not timely â either too early (market not ready), or too late (company already too big, but you want another like it). Milestone alert set."})]}),e.jsxs("div",{className:"verdict v-pass",children:[e.jsx("div",{className:"verdict-h",children:r?"ð´ Stan : écarté â AUCUNE ACTION REQUISE":"ð´ Stan: filtered out â NO INPUT REQUIRED"}),e.jsx("div",{className:"verdict-p",children:r?"Mauvais fit ou exclusion dure. Filtres de la thèse durcis définitivement.":"Wrong fit or hard exclusion. Thesis filters tightened permanently."})]})]}),e.jsx("span",{id:"s03-cd-call",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"Décisions ouvertes â échéances intégrées, aucune décision perdue":"Open decisions â built-in deadlines, no decision ever lost"}),e.jsx("p",{className:"doc-text",children:r?"Stan livre les top picks dans vos emails quotidien et hebdo. Vous répondez OUI ou NON directement depuis lâemail, la sidebar du mémo, Place Chat, Stan Chat, ou le centre de commande hebdo â cinq canaux, une colonne Airtable.":"Stan delivers top picks to your daily and weekly emails. You answer YES or NO directly from the email, the memo sidebar, Place Chat, Stan Chat, or the weekly command center â five channels, one Airtable column."}),e.jsx("p",{className:"doc-text",children:r?"Ce qui empêche quoi que ce soit de passer à la trappe, ce nâest pas un appel de rappel â câest lâéchéance imposée par le système sur chaque décision ouverte. Trois règles :":"What makes nothing slip through is not a reminder call â it's the deadline enforced by the system on every open decision. Three rules:"}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"CONSIDER"})," se résout dès que le signal manquant se lève ; si le signal ne se matérialise jamais, le deal est consigné dans Airtable et clos, sans mutation du mandat."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"MONITOR"})," a un checkpoint à 90 jours â utilisé pour les cibles trop tôt (le marché nâest pas prêt) ou trop tard (la société est déjà trop grosse, mais vous en voulez une comme elle). Jalon atteint au jour 90 â re-qualification déclenchée. Non atteint â dossier clos."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Top picks (CALL)"})," restent ouverts jusquâà votre réponse. Lâemail hebdo du lundi liste chaque CALL sans réponse en haut, avec le numéro de la semaine où il a été émis, pour que vous voyiez exactement ce qui attend."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"CONSIDER"})," resolves as soon as the missing signal clears; if the signal never materialises, the deal is logged in Airtable and closed, with no mutation to the mandate."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"MONITOR"})," has a 90-day checkpoint â used for targets that are too early (the market is not ready) or too late (the company is already too big, but you want another like it). Milestone reached by day 90 â re-qualification triggered. Not reached â file closed."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Top picks (CALL)"}
3221)," stay open until you answer. The Monday weekly email lists every unanswered CALL at the top, with the week number it was issued, so you see exactly what is waiting."]})]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Si vous voulez ajouter une note sur votre OUI ou NON, une ligne suffit â elle double la vitesse de convergence de Stan en donnant au moteur dâévolution un ",e.jsx("code",{children:"WINNING_KEYWORD"})," ou ",e.jsx("code",{children:"TOXIC_KEYWORD"})," à encoder dans la prochaine mutation de thèse."]}):e.jsxs(e.Fragment,{children:["If you want to add a note on your YES or NO, one line is enough â it doubles Stan's convergence speed by giving the Evolution Engine a ",e.jsx("code",{children:"WINNING_KEYWORD"})," or ",e.jsx("code",{children:"TOXIC_KEYWORD"})," to encode into the next thesis mutation."]})}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Pourquoi la note compte autant.":"Why the note matters so much."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Un OUI sans note produit un signal ",e.jsx("code",{children:"CEO_YES"})," générique â le moteur sait que vous étiez dâaccord mais pas pourquoi. Un OUI avec « angle MICE parfait â foncer sur celui-là » produit un ",e.jsx("code",{children:"CEO_YES + WINNING_KEYWORD"})," â le moteur extrait « angle MICE » comme pattern à renforcer. Un NON avec une raison précise sur lâangle rejeté devient la plus forte mutation unique du cycle â un ",e.jsx("code",{children:"TOXIC_KEYWORD"})," ciblé encodé dans ",e.jsx("code",{children:"reject_signal"})," / ",e.jsx("code",{children:"red_flags"})," / ",e.jsx("code",{children:"poison_anchor_characteristics"}),"."]}):e.jsxs(e.Fragment,{children:["A YES with no note produces a generic ",e.jsx("code",{children:"CEO_YES"}),' signal â the engine knows you agreed but not why. A YES with "MICE angle perfect â move fast on this one" produces a ',e.jsx("code",{children:"CEO_YES + WINNING_KEYWORD"})," â the engine extracts 'MICE angle' as a pattern to reinforce. A NO with a specific reason on the angle you rejected becomes the strongest single mutation in the cycle â a targeted ",e.jsx("code",{children:"TOXIC_KEYWORD"})," encoded into ",e.jsx("code",{children:"reject_signal"})," / ",e.jsx("code",{children:"red_flags"})," / ",e.jsx("code",{children:"poison_anchor_characteristics"}),"."]})})]}),e.jsx("span",{id:"s03-ceo-veto",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"CEO_VETO â ce que le NON fait à la thèse":"CEO_VETO â what NO does to the thesis"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"CEO_VETO"})," est un type de signal dans le Thesis Evolution Engine. Il est émis quand le CEO répond NON sur un top pick."]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"CEO_VETO"})," is a signal type in the Thesis Evolution Engine. It is emitted when the CEO answers NO on a top pick."]})}),e.jsx("p",{className:"doc-text",children:e.jsx("strong",{children:r?"Ce nâest pas un PASS.":"It is not a PASS."})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Un PASS, câest Stan qui rejette un deal de lui-même â le filtre a marché. Confirmation seulement. Un ",e.jsx("code",{children:"CEO_VETO"}),", câest Stan qui promeut un deal en top pick â et se trompe. Câest un échec de qualification sur un angle précis. Le plus fort signal de calibrage du système."]}):e.jsxs(e.Fragment,{children:["A PASS is Stan rejecting a deal on its own â the filter worked. Confirmation only. A ",e.jsx("code",{children:"CEO_VETO"})," is Stan promoting a deal to its top pick â and being wrong. That's a qualification failure on a specific angle. The strongest calibration signal in the system."]})}),e.jsx("h5",{className:"doc-h5",children:r?"Encodage du signal":"Signal encoding"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Champ":"Field"}),e.jsx("th",{children:r?"Valeur":"Value"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"signal_type"})}),e.jsx("td",{children:"CEO_VETO"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"angle_id"})}),e.jsx("td",{children:r?"lâangle qui a déclenché la sélection en top pick":"the angle that triggered the top pick selection"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"company"})}),e.jsx("td",{children:r?"la société évaluée":"the company evaluated"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"concept"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"TOXIC_KEYWORD"})," extrait de la note du CEO (null si pas de note)"]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"TOXIC_KEYWORD"})," extracted from CEO note (null if no note)"]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"note_raw"})}),e.jsx("td",{children:r?"note du CEO telle quelle ou transcription du Corporate Developer":"verbatim CEO note or Corporate Developer transcription"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"cycle_count"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["compte de ",e.jsx("code",{children:"CEO_VETO"})," antérieurs sur cet angle"]}):e.jsxs(e.Fragment,{children:["prior ",e.jsx("code",{children:"CEO_VETO"})," count on this angle"]})})]})]})]}),e.jsx("h5",{className:"doc-h5",children:r?"Priorité dans la chaîne TEE":"Priority in the TEE chain"}),e.jsxs("p",{className:"doc-text",children:[e.jsx("code",{children:"CEO_VETO"})," > ",e.jsx("code",{children:"CEO_YES"})," > ",e.jsx("code",{children:"OVERRIDE"})," > ",e.jsx("code",{children:"CALL"})," > ",e.jsx("code",{children:"MARKET_VALIDATION"})," > ",e.jsx("code",{children:"WATCHLIST"})," > ",e.jsx("code",{children:"POISON"})]}),e.jsxs("p",{className:"doc-text",children:[e.jsx("strong",{children:r?"Seuil :":"Threshold:"})," ",r?"1 signal. Immédiat. Aucune accumulation de cycles requise.":"1 signal. Immediate. No cycle accumulation required."]}),e.jsx("h5",{className:"doc-h5",children:r?"Mutations déclenchées":"Mutations triggered"}),e.jsx("ol",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:e.jsx("code",{children:"sourcing_config.angles[angle_id].reject_signal"})})," â clause ajoutée immédiatement. Contourne la règle standard des 2 cycles."]}),e.jsxs("li",{children:[e.jsx("strong",{children:e.jsx("code",{children:"semantic_filters.angles[angle_id]"})})," â ",e.jsx("code",{children:"red_flag"})," ajouté avec ",e.jsx("code",{children:'query_weight:"high"'}),". Promu à ",e.jsx("code",{children:"priority_flags"})," immédiatement (sans seuil)."]}),e.jsxs("li",{children:[e.jsx("strong",{children:e.jsx("code",{children:"benchmarks.angles[angle_id]"})})," â ",e.jsx("code",{children:"poison_anchor"})," mis à jour si anti-pattern plus extrême. ",e.jsx("code",{children:"poison_anchor_characteristics"})," : 1-2 traits ajoutés immédiatement."]}),e.jsxs("li",{children:[e.jsx("strong",{children:e.jsx("code",{children:"narrative_alpha.angles[angle_id]"})})," â ",e.jsxs("em",{children:["MUTATION CLà (seul ",e.jsx("code",{children:"CEO_VETO"})," la déclenche)"]}),". Le narratif de qualification de Stan pour cet angle est mis à jour. Format : ",e.jsx("code",{children:'"CEO_VETO: [concept] â [paraphrase of note, max 60 chars]"'}),". Max 3 phrases ",e.jsx("code",{children:"CEO_VETO"})," par angle. La plus ancienne remplacée quand câest plein. Le SEUL signal qui mute directement le raisonnement de qualification."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:e.jsx("code",{children:"sourcing_config.angles[angle_id].reject_signal"})})," â clause added immediately. Bypasses the standard 2-cycle rule."]}),e.jsxs("li",{children:[e.jsx("strong",{children:e.jsx("code",{children:"semantic_filters.angles[angle_id]"})})," â ",e.jsx("code",{children:"red_flag"})," added with ",e.jsx("code",{children:'query_weight:"high"'}),". Promoted to ",e.jsx("code",{children:"priority_flags"})," immediately (no threshold)."]}),e.jsxs("li",{children:[e.jsx("strong",{children:e.jsx("code",{children:"benchmarks.angles[angle_id]"})})," â ",e.jsx("code",{children:"poison_anchor"}
3221)," updated if more extreme anti-pattern. ",e.jsx("code",{children:"poison_anchor_characteristics"}),": 1-2 traits appended immediately."]}),e.jsxs("li",{children:[e.jsx("strong",{children:e.jsx("code",{children:"narrative_alpha.angles[angle_id]"})})," â ",e.jsxs("em",{children:["KEY MUTATION (only ",e.jsx("code",{children:"CEO_VETO"})," triggers this)"]}),". Stan's qualification narrative for this angle is updated. Format: ",e.jsx("code",{children:'"CEO_VETO: [concept] â [paraphrase of note, max 60 chars]"'}),". Max 3 ",e.jsx("code",{children:"CEO_VETO"})," sentences per angle. Oldest replaced when full. The ONLY signal that mutates the qualification reasoning directly."]})]})}),e.jsx("h5",{className:"doc-h5",children:r?"Effet sur les top picks du lundi suivant":"Effect on next Monday's top picks"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Les futurs deals correspondant au profil ",e.jsx("code",{children:"CEO_VETO"})," sont rétrogradés ",e.jsx("strong",{children:"avant quâils ne vous parviennent"}),". Pas à cause dâun filtre. Parce que ",e.jsx("em",{children:"le raisonnement de Stan a changé"}),"."]}):e.jsxs(e.Fragment,{children:["Future deals matching the ",e.jsx("code",{children:"CEO_VETO"})," profile are downgraded ",e.jsx("strong",{children:"before they reach you"}),". Not because of a filter. Because ",e.jsx("em",{children:"Stan's reasoning changed"}),"."]})}),e.jsx("h5",{className:"doc-h5",children:r?"CEO_VETO avec vs. sans note":"CEO_VETO with vs. without a note"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Cas":"Case"}),e.jsx("th",{children:"Mutations"}),e.jsx("th",{children:"Convergence"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:r?"Sans note":"Without note"})," ",r?"(le CEO a cliqué NON, rien écrit)":"(CEO clicked NO, wrote nothing)"]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Conservateur : ",e.jsx("code",{children:"reject_signal"})," + ",e.jsx("code",{children:"red_flag"}),". ",e.jsx("code",{children:"narrative_alpha"})," nâest ",e.jsx("strong",{children:"PAS"})," muté â signal trop vague."]}):e.jsxs(e.Fragment,{children:["Conservative: ",e.jsx("code",{children:"reject_signal"})," + ",e.jsx("code",{children:"red_flag"}),". ",e.jsx("code",{children:"narrative_alpha"})," is ",e.jsx("strong",{children:"NOT"})," mutated â signal too vague."]})}),e.jsx("td",{children:r?"~6 semaines sur lâangle":"~6 weeks on the angle"})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("strong",{children:r?"Avec note":"With note"})," ",r?"(une ligne du CEO ou transcription du Corporate Developer)":"(one line from CEO or Corporate Developer transcription)"]}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Mutations complètes y compris ",e.jsx("code",{children:"narrative_alpha"}),". ",e.jsx("code",{children:"TOXIC_KEYWORD"})," extrait."]}):e.jsxs(e.Fragment,{children:["Full mutations including ",e.jsx("code",{children:"narrative_alpha"}),". ",e.jsx("code",{children:"TOXIC_KEYWORD"})," extracted."]})}),e.jsx("td",{children:r?"~2 semaines sur lâangle":"~2 weeks on the angle"})]})]})]}),e.jsx("h5",{className:"doc-h5",children:r?"Comparaison des signaux":"Signal comparison"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Signal"}),e.jsx("th",{children:r?"Priorité":"Priority"}),e.jsx("th",{children:r?"Seuil":"Threshold"}),e.jsx("th",{children:r?e.jsxs(e.Fragment,{children:["Mute ",e.jsx("code",{children:"narrative_alpha"})]}):e.jsxs(e.Fragment,{children:["Mutates ",e.jsx("code",{children:"narrative_alpha"})]})})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"CEO_VETO"})}),e.jsx("td",{children:"1 (top)"}),e.jsx("td",{children:"1 signal"}),e.jsx("td",{children:r?"OUI (avec note) / NON (sans)":"YES (with note) / NO (without)"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"CEO_YES"})}),e.jsx("td",{children:"2"}),e.jsx("td",{children:"1 signal"}),e.jsx("td",{children:r?"OUI (toujours)":"YES (always)"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"OVERRIDE"})}),e.jsx("td",{children:"3"}),e.jsx("td",{children:"1 signal"}),e.jsx("td",{children:r?"NON":"NO"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"CALL"})}),e.jsx("td",{children:"4"}),e.jsx("td",{children:"3 / 2 cycles"}),e.jsx("td",{children:r?"NON":"NO"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"POISON"})}),e.jsx("td",{children:"5"}),e.jsx("td",{children:"2 cycles"}),e.jsx("td",{children:r?"NON":"NO"})]})]})]}),e.jsx("span",{id:"s03-convergence",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"Le mécanisme de convergence â taux de OUI + taux de MATCH":"The convergence mechanism â YES rate + MATCH rate"}),e.jsx("p",{className:"doc-text",children:r?"Deux métriques. Calculées chaque lundi. Visibles dans votre email hebdo.":"Two metrics. Computed every Monday. Visible in your weekly email."}),e.jsx("h5",{className:"doc-h5",children:r?"Taux de OUI":"YES rate"}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Définition :"})," nombre de OUI / nombre de décisions de top pick prises (OUI + NON)"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Note :"})," les décisions en attente (pas encore de réponse du CEO) sont exclues du calcul."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Cible :"})," 100%"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Sens :"})," Stan ne vous montre que des deals que vous validerez."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Par angle :"})," Hotel Content 100% â · Payment Reconciliation 0% â · Policy & Booking â"]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Definition:"})," number of YES / number of top pick decisions taken (YES + NO)"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Note:"})," pending decisions (no CEO answer yet) are excluded from the calculation."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Target:"})," 100%"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Meaning:"})," Stan only shows you deals you will validate."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Per angle:"})," Hotel Content 100% â · Payment Reconciliation 0% â · Policy & Booking â"]})]})}),e.jsx("h5",{className:"doc-h5",children:r?"Taux de MATCH":"MATCH rate"}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Définition :"})," nombre de MATCH / total des sociétés sourcées (suivi par angle dans ",e.jsx("code",{children:"profund_sourcing_check"}),")"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Sens :"})," le sourcing de Stan trouve les bons profils dans le bon univers."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Taux de MATCH en hausse"})," = sourcing plus précis."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Taux de MATCH en baisse"})," = mutations récentes trop agressives."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Definition:"})," number of MATCH / total sourced companies (tracked per angle in ",e.jsx("code",{children:"profund_sourcing_check"}),")"]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Meaning:"})," Stan's sourcing is finding the right profiles in the right universe."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Rising MATCH rate"})," = sourcing more precise."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Dropping MATCH rate"})," = recent mutations too aggressive."]})]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Lâemail hebdo montre les deux métriques + le détail par-angle + la tendance sur 4 semaines. Le numéro de version de la thèse (",e.jsx("code",{children:"v5.X"}),") sâincrémente chaque lundi où une mutation est appliquée."]}):e.jsxs(e.Fragment,{children:["The weekly email shows both metrics + per-angle breakdown + trend over 4 weeks. The thesis version number (",e.jsx("code",{children:"v5.X"}),") increments every Monday a mutation is applied."]})}),e.jsx("h5",{className:"doc-h5",children:r?"à quelle vitesse Stan converge-t-il ?":"How fast does Stan converge?"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Scénario":"Scenario"}),e.jsx("th",{children:r?"Mécanique":"Mechanic"}),e.jsx("th",{children:"Convergence"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"A â CEO NON, sans note":"A â CEO NO, no note"})}),e.jsx("td",{children:r?"Stan infère le pattern depuis le profil de la société.":"Stan infers the pattern from the company profile."}),e.jsx("td",{children:r?"~6 semaines sur lâangle":"~6 weeks on the angle"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"B â CEO NON + une ligne":"B â CEO NO + one line"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Stan extrait un ",e.jsx("code",{children:"TOXIC_KEYWORD"}),". Met à jour ",e.jsx("code",{children:"reject_signal"}),", ",e.jsx("code",{children:"red_flags"})," et ",e.jsx("code",{children:"narrative_alpha"})," simultanément."]}):e.jsxs(e.Fragment,{children:["Stan extracts a ",e.jsx("code",{children:"TOXIC_KEYWORD"}),". Updates ",e.jsx("code",{children:"reject_signal"}),", ",e.jsx("code",{children:"red_flags"}),", and ",e.jsx("code",{children:"narrative_alpha"})," simultaneously."]})}),e.jsx("td",{children:r?"~2 semaines sur lâangle":"~2 weeks on the angle"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"C â CEO OUI + n
3221ote de contexte":"C â CEO YES + context note"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Stan extrait un ",e.jsx("code",{children:"WINNING_KEYWORD"}),". Renforce ",e.jsx("code",{children:"green_flags"})," et ",e.jsx("code",{children:"gold_anchor_pool"}),". Calibrage positif."]}):e.jsxs(e.Fragment,{children:["Stan extracts a ",e.jsx("code",{children:"WINNING_KEYWORD"}),". Reinforces ",e.jsx("code",{children:"green_flags"})," and ",e.jsx("code",{children:"gold_anchor_pool"}),". Positive calibration."]})}),e.jsx("td",{children:r?"Enseigne à quoi ressemble lâexcellence":"Teaches what great looks like"})]})]})]}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Lâasymétrie.":"The asymmetry."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Le NON vaut plus que le OUI pour la vitesse de convergence. Stan a déjà sélectionné le deal en top pick â il sait donc pourquoi il a dit OUI. Ce quâil ne sait pas, ce sont les raisons subtiles pour lesquelles vous dites NON sur un deal qui semble bon sur le papier. ",e.jsx("strong",{children:"Ce delta, câest votre jugement. Câest ce que le système capture et encode."})]}):e.jsxs(e.Fragment,{children:["NO is more valuable than YES for convergence speed. Stan already selected the deal as a top pick â so it knows why it said YES. What it doesn't know is the subtle reasons you say NO on a deal that looks right on paper. ",e.jsx("strong",{children:"That delta is your judgment. That's what the system captures and encodes."})]})})]}),e.jsx("h5",{className:"doc-h5",children:r?"Repère pratique":"Practical benchmark"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Top picks par semaine":"Top picks per week"}),e.jsx("th",{children:r?"Ce que ça signale":"What it signals"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:"1â3"}),e.jsx("td",{children:r?"Thèse bien calibrée":"Thesis well calibrated"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"4â6"}),e.jsx("td",{children:r?"Acceptable â surveiller les poids dâangle":"Acceptable â monitor angle weights"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"7+"}),e.jsx("td",{children:r?"Thèse trop large â session de recalibrage recommandée":"Thesis too broad â recalibration session recommended"})]})]})]}),e.jsxs("div",{className:"callout success",children:[e.jsx("strong",{children:r?"La note sur votre décision comme moteur de calibrage.":"The note on your decision as a calibration engine."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Une note orale ou écrite est lâentrée à plus haute bande passante que le système reçoit chaque semaine. Une raison dâune ligne extraite de votre NON (ou de votre OUI) devient un ",e.jsx("code",{children:"TOXIC_KEYWORD"})," ou ",e.jsx("code",{children:"WINNING_KEYWORD"})," directement injecté dans les règles de mutation du moteur dâévolution â bien plus riche quâun clic binaire."]}):e.jsxs(e.Fragment,{children:["A spoken or written note is the highest-bandwidth input the system receives each week. A one-line reason extracted from your NO (or your YES) becomes a ",e.jsx("code",{children:"TOXIC_KEYWORD"})," or ",e.jsx("code",{children:"WINNING_KEYWORD"})," directly injected into the Evolution Engine's mutation rules â far richer than a binary click."]})})]}),e.jsx("span",{id:"s03-monday",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"Lâemail hebdo du lundi â centre de commande":"The Monday weekly email â command center"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Lâemail hebdo est rendu par lâendpoint Modal ",e.jsx("code",{children:"POST /directive/weekly-email"})," (dans ",e.jsx("code",{children:"modal_proxy/stan_proxy.py"}),", pas de LLM â pur templating HTML avec fetchs Airtable). Câest le deuxième module (id ",e.jsx("code",{children:"235"}),") du scénario Make ",e.jsx("code",{children:"3517126"}),", appelé juste après la fin du module thesis-update. Il reçoit les s
3221orties de thesis-update (",e.jsx("code",{children:"thesis_mutations_html"}),", ",e.jsx("code",{children:"kpi_html"}),", ",e.jsx("code",{children:"full_explanation_html"}),", ",e.jsx("code",{children:"yes_rate_pct"}),", ",e.jsx("code",{children:"trend_label"}),", ",e.jsx("code",{children:"subject_ok / subject_pending"}),") plus les métadonnées du fonds, et retourne le HTML complet de lâemail + la ligne dâobjet auto-sélectionnée. Make lâenvoie ensuite. ",e.jsx("strong",{children:"Rien ne passe à la trappe silencieusement â chaque CALL encore en attente dâun OUI/NON est fetché au moment du rendu, donc lâemail est toujours cohérent avec Airtable."})]}):e.jsxs(e.Fragment,{children:["The weekly email is rendered by the Modal endpoint ",e.jsx("code",{children:"POST /directive/weekly-email"})," (in ",e.jsx("code",{children:"modal_proxy/stan_proxy.py"}),", no LLM â pure HTML templating with Airtable fetches). It is the second module (id ",e.jsx("code",{children:"235"}),") of Make scenario ",e.jsx("code",{children:"3517126"}),", called right after the thesis-update module finishes. It receives the thesis-update outputs (",e.jsx("code",{children:"thesis_mutations_html"}),", ",e.jsx("code",{children:"kpi_html"}),", ",e.jsx("code",{children:"full_explanation_html"}),", ",e.jsx("code",{children:"yes_rate_pct"}),", ",e.jsx("code",{children:"trend_label"}),", ",e.jsx("code",{children:"subject_ok / subject_pending"}),") plus the fund metadata, and returns the full email HTML + the auto-selected subject line. Make then sends it. ",e.jsx("strong",{children:"Nothing slips silently â every CALL still waiting for a YES/NO is fetched at render time, so the email is always self-consistent with Airtable."})]})}),e.jsx("h5",{className:"doc-h5",children:r?"Structure de lâemail du lundi":"Structure of the Monday email"}),e.jsx("ol",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Barre de stats (4 cellules)"})," â nb sourcé · nb qualifié · OUI/NON en attente (orange #96690E)
3221· OUI validés (vert #12A150) + taux de OUI %. Si Make ne fournit pas ",e.jsx("code",{children:"sourced_count"})," / ",e.jsx("code",{children:"qualified_count"}),", lâendpoint retombe sur un comptage Airtable côté serveur."]}),e.jsxs("li",{children:[e.jsxs("strong",{children:["Section â³ En attente (rendue si ",e.jsx("code",{children:"pending_count > 0"}),")"]})," â Top picks encore en attente dâun OUI ou NON. Fetchés en direct via ",e.jsx("code",{children:"_fetch_pending_calls(fund_type)"})," : lignes où ",e.jsx("code",{children:'status_profund == "CALL"'})," ET ",e.jsx("code",{children:"ceo_decision"})," est vide, triées par ",e.jsx("code",{children:"profund_quick_score"})," DESC, plafonnées à 20. Chaque ligne porte les boutons OUI · NON."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Toutes les décisions de la semaine"})," â Fetchées via ",e.jsx("code",{children:"_fetch_week_deals(fund_type)"})," : chaque décision CALL/CONSIDER/MONITOR/PASS prise par Stan sur les 7 derniers jours. Le label du verdict vient directement de la colonne ",e.jsx("code",{children:"status_profund"})," dâAirtable, avec le flag dâoverride CEO si ",e.jsx("code",{children:"ceo_decision"})," a été renseigné."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Mise à jour de la thèse â bas de lâemail"})," â Titre « Ta thèse cette semaine » + la liste à puces ",e.jsx("code",{children:"thesis_mutations_html"})," (pas de compte explicite â puces seulement) + ",e.jsx("code",{children:"kpi_html"})," (taux OUI/MATCH par-angle) + ",e.jsx("code",{children:"full_explanation_html"})," (narratif stratégique) + lien CTA vers lâassistant. Ligne dâobjet : ",e.jsxs("code",{children:['"â
',"{","t_uptodate","}",' · ..."']})," si ",e.jsx("code",{children:"pending_count == 0"}),", sinon ",e.jsxs("code",{children:['"â³ ',"{","pending_count","}"," ","{","t_waiting","}",' · ..."']}),"."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Stats bar (4 cells)"})," â Sourced count · Qualified count · YES/NO pending (orange #96690E)
3221· YES validated (green #12A150) + YES rate %. If Make doesn't supply ",e.jsx("code",{children:"sourced_count"})," / ",e.jsx("code",{children:"qualified_count"})," the endpoint falls back to a server-side Airtable count."]}),e.jsxs("li",{children:[e.jsxs("strong",{children:["â³ Pending section (rendered if ",e.jsx("code",{children:"pending_count > 0"}),")"]})," â Top picks still waiting for a YES or NO answer. Fetched live via ",e.jsx("code",{children:"_fetch_pending_calls(fund_type)"}),": rows where ",e.jsx("code",{children:'status_profund == "CALL"'})," AND ",e.jsx("code",{children:"ceo_decision"})," is empty, sorted by ",e.jsx("code",{children:"profund_quick_score"})," DESC, capped at 20. Each row carries the YES · NO buttons."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"All decisions this week"})," â Fetched via ",e.jsx("code",{children:"_fetch_week_deals(fund_type)"}),": every CALL/CONSIDER/MONITOR/PASS decision Stan took in the past 7 days. Verdict label comes from Airtable's ",e.jsx("code",{children:"status_profund"})," column directly, with the CEO override flag if ",e.jsx("code",{children:"ceo_decision"})," was set."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Thesis update â bottom of email"}),' â Title "Ta thèse cette semaine" + the ',e.jsx("code",{children:"thesis_mutations_html"})," bullet list (no explicit count â bullets only) + ",e.jsx("code",{children:"kpi_html"})," (per-angle YES/MATCH rates) + ",e.jsx("code",{children:"full_explanation_html"})," (strategic narrative) + CTA link to the wizard. Subject line: ",e.jsxs("code",{children:['"â
',"{","t_uptodate","}",' · ..."']})," if ",e.jsx("code",{children:"pending_count == 0"}),", else ",e.jsxs("code",{children:['"â³ ',"{","pending_count","}"," ","{","t_waiting","}",' · ..."']}),"."]})]})}),e.jsxs("div",{className:"callout success",children:[e.jsx("strong",{children:r?"La section thèse est la preuve que le système compose.":"The thesis section is the proof that the system is compounding."}),e.jsx("p",{children:r?"Chaque lundi, le CEO voit son système évoluer â de façon mesurable.":"Each Monday, the CEO sees their system evolve â measurably."})]}),e.jsx("span",{id:"s03-daily",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"Lâemail quotidien â se déclenche après la qualification":"The daily email â fires after qualification"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Dès quâun deal arrive dans Airtable avec un verdict, Make BP2 (scénario ",e.jsx("code",{children:"3869328"}),") POST à lâendpoint Modal ",e.jsx("code",{children:"/directive/daily-email"})," (dans ",e.jsx("code",{children:"modal_proxy/stan_proxy.py"}),", pas de LLM). Lâendpoint tire quatre requêtes Airtable en direct â CALL en attente, deals qualifiés du jour, compte OUI-validés, total des décisions CALL â et assemble le corps de lâemail. Il retourne ",e.jsx("strong",{children:"trois variantes HTML dans la même réponse"})," :"]}):e.jsxs(e.Fragment,{children:["Once a deal lands in Airtable with a verdict, Make BP2 (scenario ",e.jsx("code",{children:"3869328"}),") POSTs to the Modal endpoint ",e.jsx("code",{children:"/directive/daily-email"})," (in ",e.jsx("code",{children:"modal_proxy/stan_proxy.py"}),", no LLM). The endpoint pulls four live Airtable queries â pending CALLs, today's qualified deals, YES-validated count, total CALL decisions â and assembles the email body. It returns ",e.jsx("strong",{children:"three HTML variants in the same response"}),":"]})}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("code",{children:"html"})," â adressé au CEO : boutons dâaction complets (Schedule call · Deal Intelligence · Manage Account · Login)."]}),e.jsxs("li",{children:[e.jsx("code",{children:"html_profund"})," â variante LP : branding profund.vc, contrôles minimaux, pied de page custom « For investment inquiries, contact [email protected] »."]}),e.jsxs("li",{children:[e.jsx("code",{children:"html_proplace"})," â variante démo marketing Proplace."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("code",{children:"html"})," â CEO-facing: full action buttons (Schedule call · Deal Intelligence · Manage Account · Login)."]}),e.jsxs("li",{children:[e.jsx("code",{children:"html_profund"}),' â LP variant: profund.vc branding, minimal controls, custom footer "For investment inquiries, contact [email protected]".']}),e.jsxs("li",{children:[e.jsx("code",{children:"html_proplace"})," â Proplace marketing demo variant."]})]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Plus ",e.jsx("code",{children:"pending_count"}),", ",e.jsx("code",{children:"subject"})," (auto-sélectionné parmi ",e.jsx("code",{children:"subject_ok"})," / ",e.jsx("code",{children:"subject_pending"})," selon ",e.jsx("code",{children:"pending_count"}),"), et un ",e.jsx("code",{children:"notice"})," statique."]}):e.jsxs(e.Fragment,{children:["Plus ",e.jsx("code",{children:"pending_count"}),", ",e.jsx("code",{children:"subject"})," (auto-selected from ",e.jsx("code",{children:"subject_ok"})," / ",e.jsx("code",{children:"subject_pending"})," based on ",e.jsx("code",{children:"pending_count"}),"), and a static ",e.jsx("code",{children:"notice"}),"."]})}),e.jsx("h5",{className:"doc-h5",children:r?"Sections du corps (les trois variantes partagent le même shell)":"Body sections (all three variants share the same shell)"}),e.jsx("ol",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"En-tête"})," â logo du fonds, « Stan · Daily Brief », date, et un résumé dâune ligne « ","{","sourced_count","}"," sourcés · ","{","qualified_count","}"," qualifiés · ","{","pending_count","}"," décision(s) requise(s) »."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Grille KPI (4 cellules, même ordre que lâemail du lundi)"}
3221)," â Sourcés (teal clair, lien vers le sourcing dashboard) · Qualifiés (teal clair, lien vers le deal flow) · En Attente (ambre #96690E, sans lien) · OUI Validés (vert #12A150, sans lien) + taux de OUI %."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Section â³ En attente"})," (fond jaune, rendue si ",e.jsx("code",{children:"pending_count > 0"}),") â titre « â³ ","{","n","}"," dossiers en attente â tous les CALL sans YES / NO », triée par ",e.jsx("code",{children:"profund_quick_score"})," DESC, plafonnée à 20. Chaque carte porte company_name, tagline, score, stade, catégorie, date de sourcing."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Décisions autonomes de Stan aujourd'hui"})," (fond gris) â chaque décision CALL/CONSIDER/PASS prise par Stan aujourdâhui (",e.jsx("code",{children:"action_timestamp == today"})," ET status â ","{"," CONSIDER · MONITOR · PASS ","}",' OU (status == CALL ET ceo_decision â "")). Le badge de statut est color-codé ; un badge dâoverride CEO apparaît si ',e.jsx("code",{children:"ceo_decision"})," était déjà renseigné."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Actions du bas + pied de page"})," â pilotés par variante."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"Header"}),' â Fund logo, "Stan · Daily Brief", date, and a one-line summary "',"{","sourced_count","}"," sourced · ","{","qualified_count","}"," qualified · ","{","pending_count","}",' decision(s) required".']}),e.jsxs("li",{children:[e.jsx("strong",{children:"KPI grid (4 cells, identical order to the Monday email)"})," â Sourced (light teal, links to sourcing dashboard) · Qualified (light teal, links to deal flow) · En Attente (amber #96690E, no link) · YES Validated (green #12A150, no link) + YES rate %."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"â³ Pending section"})," (yellow background, rendered if ",e.jsx("code",{children:"pending_count > 0"}),') â title "â³ ',"{","n","}",' dossiers en attente â tous les CALL sans YES / NO", sorted by ',e.jsx("code",{children:"profund_quick_score"})," DESC, capped at 20. Each card carries company_name, tagline, score, stage, category, sourced date."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Décisions autonomes de Stan aujourd'hui"})," (gray background) â every CALL/CONSIDER/PASS decision Stan took today (",e.jsx("code",{children:"action_timestamp == today"})," AND status â ","{"," CONSIDER · MONITOR · PASS ","}",' OR (status == CALL AND ceo_decision â "")). Status badge is color-coded; a CEO-override badge surfaces if ',e.jsx("code",{children:"ceo_decision"})," was already set."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Bottom actions + footer"})," â variant-controlled."]})]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Ligne dâobjet sélectionnée dynamiquement par lâendpoint : ",e.jsxs("code",{children:['"â³ ',"{","pending_count","}"," dossiers en attente â Deal Flow Report â ","{","date","}"," ","{","hh:mm","}",'"']})," quand quelque chose requiert votre action, ",e.jsxs("code",{children:['"â
à jour â Deal Flow Report â ',"{","date","}"," ","{","hh:mm","}",'"']})," sinon."]}):e.jsxs(e.Fragment,{children:["Subject line dynamically selected by the endpoint: ",e.jsxs("code",{children:['"â³ ',"{","pending_count","}"," dossiers en attente â Deal Flow Report â ","{","date","}"," ","{","hh:mm","}",'"']})," when something needs your input, ",e.jsxs("code",{children:['"â
à jour â Deal Flow Report â ',"{","date","}"," ","{","hh:mm","}",'"']})," otherwise."]})}),e.jsx(ss,{children:r?e.jsxs(e.Fragment,{children:[e.jsx("div",{children:"Brief quotidien (3 variantes : CEO · LP · marketing) â shortlist classée, OUI · NON sur les top picks, mémo complet + modèle financier joints."}),e.jsx("div",{children:"Brief hebdo du lundi 16h â taux de OUI · taux de MATCH · version de la thèse · détail par-angle."}),e.jsxs("div",{children:["Mémo HTML sur ",e.jsx("code",{children:"analysis.proplace.co/<slug>-v2"})," â versionné sur GitHub (",e.jsx("code",{children:"proplace-co/wargame"}),"), mis à jour à chaque étape."]}),e.jsx("div",{children:"Deal Flow Dashboard â tous les matchs validés avec verdict, stade, mémos, historique complet de décisions."})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{children:"Daily brief (3 variants: CEO · LP · marketing) â ranked shortlist, YES · NO on top picks, full memo + financial model attached."}),e.jsx("div",{children:"Monday 4 PM weekly brief â YES rate · MATCH rate · thesis version · per-angle breakdown."}),e.jsxs("div",{children:["Memo HTML on ",e.jsx("code",{children:"analysis.proplace.co/<slug>-v2"})," â versioned on GitHub (",e.jsx("code",{children:"proplace-co/wargame"}),"), updated at every stage."]}),e.jsx("div",{children:"Deal Flow Dashboard â all validated matches with verdict, stage, memos, full decision history."})]})})]}),e.jsxs("section",{className:"doc-section",children:[e.jsx("h3",{className:"doc-h3",children:r?"Le deal est suivi jusquâà la sortie â En continu · Stan assiste à chaque étape":"The deal is tracked to exit â Ongoing · Stan assists every step"}),e.jsx("span",{id:"s03-stan-intro",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"Ce quâest Stan":"What Stan is"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Stan est une app connectée au mémo. Techniquement, câest une IIFE injectée dans chaque HTML de mémo statique sur ",e.jsx("code",{children:" analysis.proplace.co"}),". Elle sâactive sur ",e.jsx("code",{children:'<meta name="stan-deal" content="..." />'})," et rend un panneau latéral droit à cinq onglets. Tout ce que vous faites dans Stan persiste â vers Airtable, GitHub et localStorage â pour que le deal garde une piste dâaudit complète, du CALL au portefeuille."]}):e.jsxs(e.Fragment,{children:["Stan is an app connected to the memo. Technically, it is an IIFE injected into every static memo HTML on ",e.jsx("code",{children:" analysis.proplace.co"}),". It activates on ",e.jsx("code",{children:'<meta name="stan-deal" content="..." />'})," and renders a right-side panel with five tabs. Everything you do inside Stan persists â to Airtable, to GitHub, and to localStorage â so the deal keeps a full audit trail from CALL to portfolio."]})}),e.jsx("span",{id:"s03-stan-tabs",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"5 onglets â vue dâensemble":"5 tabs â overview"}),e.jsx("div",{className:"grid-2",children:N5.map(l=>{const d=r?V5(l):l;return e.jsxs("div",{className:"card",children:[e.jsxs("div",{className:"card-h",children:[l.icon," ",d.name]}),e.jsx("div",{className:"card-p",children:d.desc})]},l.name)})}
3221),e.jsx("span",{id:"s03-tab-parcours",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"Parcours â cycle de vie en 7 phases":"Parcours â 7-phase lifecycle"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Chaque CALL entre dans un cycle de vie en 7 phases. Lâonglet Parcours le rend en checklist â chaque phase regroupe des tâches obligatoires et optionnelles que vous cochez à mesure que le deal avance. La progression est persistée dans Airtable (",e.jsx("code",{children:"stan_tasks_done"}),") pour que lâétat du deal survive entre les sessions."]}):e.jsxs(e.Fragment,{children:["Every CALL enters a 7-phase lifecycle. The Parcours tab renders it as a checklist â each phase bundles required and optional tasks you tick off as the deal progresses. Progress is persisted to Airtable (",e.jsx("code",{children:"stan_tasks_done"}),") so the deal state survives across sessions."]})}),e.jsx("div",{className:"phases",children:E5.map(l=>{const d=r?Y5(l):{name:l.name,tasks:l.tasks.map(p=>p.task)};return e.jsxs("div",{className:"phase",children:[e.jsxs("div",{className:"phase-h",children:[e.jsx("span",{className:"phase-icon",children:l.icon}),e.jsx("span",{className:"phase-name",children:d.name}),e.jsx("span",{className:`phase-badge ${l.kind}`,children:l.kind==="ongoing"?r?"En continu":"Ongoing":r?"Obligatoire":"Required"})]}),e.jsx("ul",{className:"phase-tasks",children:l.tasks.map((p,u)=>e.jsxs("li",{children:[e.jsx("span",{className:"task-check","aria-hidden":"true"}),e.jsx("span",{className:"task-text",children:d.tasks[u]??p.task}),e.jsx("span",{className:`task-req ${p.required?"req":"opt"}`,children:p.required?r?"Obligatoire":"Required":r?"Optionnel":"Optional"})]},p.task))})]},l.name)})}),e.jsx("span",{id:"s03-tab-chat",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:"Chat"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Demandez nâimporte quoi à Stan sur le mémo. Sélectionnez nâimporte quel texte du mémo â une citation, un chiffre, un nom de fondateur â et Stan pré-remplit la question avec la sélection comme contexte. Stan peut aussi ",e.jsx("strong",{children:"éditer le mémo"})," : quand la réponse est une correction (ex. un mauvais chiffre dâARR), Stan retourne un patch JSON qui commit directement sur GitHub (",e.jsx("code",{children:"proplace-co/wargame"}),"), et le HTML du mémo sur ",e.jsx("code",{children:"analysis.proplace.co"})," reflète le changement au rafraîchissement."]}):e.jsxs(e.Fragment,{children:["Ask Stan anything about the memo. Select any text in the memo â a quote, a number, a founder name â and Stan pre-fills the question with the selection as context. Stan can also ",e.jsx("strong",{children:"edit the memo"}),": when the answer is a correction (e.g. a wrong ARR figure), Stan returns a JSON patch that commits straight back to GitHub (",e.jsx("code",{children:"proplace-co/wargame"}),"), and the memo HTML on ",e.jsx("code",{children:"analysis.proplace.co"})," reflects the change on refresh."]})}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Conscient de la sélection.":"Selection-aware."}),e.jsx("p",{children:r?"Le chat est contextuel. Sélectionner un paragraphe avant de demander donne à Stan un périmètre exact â aucune référence hallucinée à dâautres parties du mémo.":"The chat is contextual. Selecting a paragraph before asking gives Stan exact scope â no hallucinated references to other parts of the memo."})]}),e.jsx("span",{id:"s03-tab-skills",className:"doc-anchor"}),e.jsxs("h3",{className:"doc-h3",children:["Skills (",tm.length," ",r?"livrables packagés":"packaged outputs",")"]}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Un clic lance un livrable packagé soutenu par un prompt dédié. Chaque skill correspond à une entrée dans ",e.jsx("code",{children:" SKILL_PROMPTS"})," (",e.jsx("code",{children:"modal_proxy/stan_proxy.py"}),"). Certains skills correspondent aussi à un ID de tâche Parcours â lancer le skill coche automatiquement la tâche correspondante."]}):e.jsxs(e.Fragment,{children:["One click runs a packaged output backed by a dedicated prompt. Each skill maps to an entry in ",e.jsx("code",{children:" SKILL_PROMPTS"})," (",e.jsx("code",{children:"modal_proxy/stan_proxy.py"}),"). Some skills also map to a Parcours task ID â running the skill auto-checks the corresponding task."]})}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Clé":"Key"}),e.jsx("th",{children:r?"Titre":"Title"}),e.jsx("th",{children:r?"Catégorie":"Category"}),e.jsx("th",{children:r?"Tâche":"Task"}),e.jsx("th",{children:r?"Résumé":"Summary"})]})}),e.jsx("tbody",{children:tm.map(l=>{const d=r?X5(l):l;return e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:l.key})}),e.jsx("td",{children:d.title}),e.jsx("td",{children:d.category}),e.jsx("td",{children:l.task??"â"}),e.jsx("td",{children:d.summary})]},l.key)})})]}),e.jsx("span",{id:"s03-tab-outputs",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"Livrables":"Outputs"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Chaque résultat de skill est sauvegardé dans Airtable (",e.jsx("code",{children:"stan_outputs_json"}),") et listé dans lâonglet Livrables. Chaque livrable a une URL partageable permanente â transférez-la à un avocat, un co-investisseur ou un LP sans donner accès au mémo. Tout livrable peut être ",e.jsx("strong",{children:"restauré dans le mémo"})," à tout moment, remplaçant la version courante de cette section."]}):e.jsxs(e.Fragment,{children:["Every skill result is saved to Airtable (",e.jsx("code",{children:"stan_outputs_json"}),") and listed in the Outputs tab. Each output has a permanent shareable URL â forward it to a lawyer, a co-investor, or an LP without giving memo access. Any output can be ",e.jsx("strong",{children:"restored into the memo"})," at any time, replacing the current version of that section."]})}),e.jsx("span",{id:"s03-tab-history",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"Historique":"History"}),e.jsx("p",{className:"doc-text",children:r?"Chaque édition du mémo (manuelle ou via patch JSON de Stan) est snapshotée. Lâonglet Historique montre lâhistorique complet dâédition avec vue diff. Un clic restaure nâimporte quelle version précédente â utile quand une régénération de skill remplace une section que vous voulez récupérer, ou quand une édition collaborative a mal tourné.":"Every memo edit (manual or via Stan JSON patch) is snapshotted. The History tab shows the full edit history with diff view. One click restores any previous version â useful when a skill regeneration replaces a section you want back, or when a collaborative edit went wrong."}),e.jsx("span",{id:"s03-stan-backend",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"Backend & persistance":"Backend & persistence"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Stan appelle ",e.jsx("code",{children:"modal_proxy/stan_proxy.py"})," déployé sur Modal. Trois endpoints :"]}):e.jsxs(e.Fragment,{children:["Stan calls ",e.jsx("code",{children:"modal_proxy/stan_proxy.py"})," deployed on Modal. Three endpoints:"]})}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Endpoint"}),e.jsx("th",{children:r?"But":"Purpose"}),e.jsx("th",{children:r?"Modèle":"Model"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"POST /chat"})}),e.jsx("td",{children:r?"Q&R en roue libre avec contexte de sélection du mémo. Ãditions du mémo retournées en JSON.":"Free-form Q&A with memo selection context. Memo edits returned as JSON."}),e.jsx("td",{children:"Gemini 2.5 Flash via OpenRouter"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsxs("code",{children:["POST /skill/","{key}"]})}),e.jsx("td",{children:r?"Lance un skill packagé. Retourne une sortie HTML.":"Run a packaged skill. Returns HTML output."}),e.jsx("td",{children:"Gemini 2.5 Flash"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsxs("code",{children:["POST /directive/","{dir_id}"]})}),e.jsx("td",{children:r?"Lance une directive spécifique (D01âD09 + blocs financiers).":"Run a specific directive (D01âD09 + financial blocks)."}),e.jsx("td",{children:"Gemini 2.5 Flash"})]})]})]}),e.jsxs("div",{className:"callout warning",children:[e.jsx("strong",{children:r?"Persistance tri-système.":"Tri-system persistence."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Lâétat est écrit à trois endroits : ",e.jsx("strong",{children:"Airtable"})," (",e.jsx("code",{children:"stan_tasks_done"}),", ",e.jsx("code",{children:"stan_outputs_json"}),", ",e.jsx("code",{children:"stan_dir_files_json"}),"), ",e.jsx("strong",{children:"GitHub"})," (les éditions HTML du mémo commitent vers ",e.jsx("code",{children:"proplace-co/wargame"}),"), et ",e.jsx("strong",{children:"localStorage"})," pour les éditions en cours avant sauvegarde."]}):e.jsxs(e.Fragment,{children:["State is written to three places: ",e.jsx("strong",{children:"Airtable"})," (",e.jsx("code",{children:"stan_tasks_done"}),", ",e.jsx("code",{children:"stan_outputs_json"}),", ",e.jsx("code",{children:"stan_dir_files_json"}),"), ",e.jsx("strong",{children:"GitHub"})," (memo HTML edits commit back to ",e.jsx("code",{children:"proplace-co/wargame"}),"), and ",e.jsx("strong",{children:"localStorage"})," for in-progress edits before save."]})})]})]}),e.jsx(is,{step:ni[3]}),e.jsxs("section",{className:"doc-section",children:[e.jsx("span",{id:"s04-app",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"4.1 Le dashboard Deal Intelligence":"4.1 The Deal Intelligence Dashboard"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Le dashboard Deal Intelligence est une app web React 18 servie sur ",e.jsx("code",{children:"proplace.co/chat/?fund=<slug>"}),". Il lit tout votre pipeline depuis Airtable, vous laisse sélectionner plusieurs deals, et exécute des requêtes en langage naturel ou des actions packagées sur la sélection. Chaque résultat est partageable via une URL à token permanente."]}):e.jsxs(e.Fragment,{children:["The Deal Intelligence Dashboard is a React 18 web app served at ",e.jsx("code",{children:"proplace.co/chat/?fund=<slug>"}),". It reads your entire pipeline from Airtable, lets you select multiple deals, and runs natural-language queries or packaged actions across them. Every result is shareable via a permanent token URL."]})}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Aspect"}),e.jsx("th",{children:r?"Détail":"Detail"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:"Stack"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["React 18 (Vite), bundle unique dans ",e.jsx("code",{children:"chat-dist/"})]}):e.jsxs(e.Fragment,{children:["React 18 (Vite), single bundle in ",e.jsx("code",{children:"chat-dist/"})]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:r?"Pattern dâURL":"URL pattern"}),e.jsxs("td",{children:[e.jsx("code",{children:"proplace.co/chat/?fund=<slug>"})," â ",r?"le slug du fonds pilote le filtre Airtable":"fund slug drives Airtable filter"]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:r?"Base Airtable":"Airtable base"}),e.jsx("td",{children:e.jsx("code",{children:"appV3saIhfVEGvWcF"})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"Tables"}),e.jsxs("td",{children:[e.jsx("code",{children:"tbllZ1lgmzi1W1QBu"})," (deals) · ",e.jsx("code",{children:"tblEgYhLpdBdcpKrw"})," (",r?"config fonds":"fund config",")"]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:r?"Vues":"Views"}),e.jsxs("td",{children:[e.jsx("strong",{children:"Home"})," (",r?"cartes de deals, grille dâactions, barre de saisie":"deal cards, action grid, input bar",") · ",e.jsx("strong",{children:"Chat"})," (",r?"messages, blocs de décision, pièces jointes":"messages, decision blocks, attachments",")"]})]})]})]}),e.jsx("span",{id:"s04-actions",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"4.2 6 actions packagées":"4.2 6 packaged actions"}),e.jsx("p",{className:"doc-text",children:r?"Cliquez une carte dâaction sur la vue Home, sélectionnez les deals à cibler, et Stan exécute lâaction sur la sélection. Chaque action est un template de prompt structuré â lâexemple ci-dessous montre le type de requête en langage naturel en quoi elle se déploie.":"Click an action card on the Home view, select the deals it should target, and Stan runs the action across the selection. Each action is a structured prompt template â the example below shows the kind of natural-language request it expands into."}),e.jsx("div",{className:"grid-2",children:C5.map(l=>{const d=r?W5(l):l;return e.jsxs("div",{className:"card",children:[e.jsxs("div",{className:"card-h",children:[l.emoji," ",d.title]}),e.jsx("div",{className:"card-p doc-italic",children:d.example})]},l.title)})}),e.jsx("span",{id:"s04-freetext",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"4.3 Requêtes en texte libre":"4.3 Free-text queries"}),e.jsx("p",{className:"doc-text",children:r?"Sous les actions packagées, la barre de saisie accepte nâimporte quelle question. Stan lit chaque mémo, décision et donnée sur vos deals sélectionnés pour répondre.":"Below the packaged actions, the input bar accepts any question. Stan reads every memo, decision, and data point across your selected deal
3221s to answer."}),e.jsx("pre",{className:"doc-code",children:r?`"Compare mes 3 deals actifs en due diligence sur le multiple d'EBITDA, 3222la qualité d'équipe et les synergies avec mon portefeuilleâ¦"`:`"Compare my 3 active deals in due diligence on EBITDA multiple, 3223team quality, and synergies with my portfolioâ¦"`}),e.jsx("span",{id:"s04-backend",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"4.4 Backend & déploiement":"4.4 Backend & deployment"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Endpoint"}),e.jsx("th",{children:r?"But":"Purpose"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"POST /chat"})}),e.jsx("td",{children:r?"Q&R en texte libre sur les deals sélectionnés. Gemini via OpenRouter.":"Free-text Q&A across selected deals. Gemini via OpenRouter."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"POST /fetch-memo"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Charge le HTML privé du mémo depuis GitHub ",e.jsx("code",{children:"proplace-co/wargame"}),"."]}):e.jsxs(e.Fragment,{children:["Loads private memo HTML from GitHub ",e.jsx("code",{children:"proplace-co/wargame"}),"."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"POST /save-output"})}),e.jsx("td",{children:r?"Persiste le livrable dans Airtable, retourne une URL à token partageable.":"Persists output to Airtable, returns shareable token URL."})]})]})]}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["La source vit dans ",e.jsx("code",{children:"modal_proxy/proxy.py"}),". Les sorties de build vont dans ",e.jsx("code",{children:"chat-dist/"})," et sont servies depuis ",e.jsx("code",{children:"proplace.co/chat/"}),". Lâauthentification est par-fonds via le slug ; les pièces jointes sâuploadent vers le backend et sont transmises dans le contexte du prompt."]}):e.jsxs(e.Fragment,{children:["Source lives in ",e.jsx("code",{children:"modal_proxy/proxy.py"}),". Build outputs go to ",e.jsx("code",{children:"chat-dist/"})," and are served from ",e.jsx("code",{children:"proplace.co/chat/"}),". Authentication is per-fund via the slug; attachments upload to the backend and are forwarded in the prompt context."]})}),e.jsx(ss,{children:r?e.jsxs(e.Fragment,{children:[e.jsx("div",{children:"6 actions packagées â prép dâappel, synthèse board, approche, analyse de risque, comparaison, rapport pi
3223peline. Chacune partageable via URL permanente."}),e.jsx("div",{children:"Requêtes en texte libre â demandez nâimporte quoi sur tout votre deal flow. Stan lit chaque mémo, décision et donnée."})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{children:"6 packaged actions â call prep, board synthesis, outreach, risk analysis, comparison, pipeline report. Each shareable via permanent URL."}),e.jsx("div",{children:"Free-text queries â ask anything across your entire deal flow. Stan reads every memo, decision, and data point."})]})})]}),e.jsx(is,{step:ni[4]}),e.jsxs("section",{className:"doc-section",children:[e.jsx("span",{id:"s05-decisions",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"5.1 Stan lit chaque décision que vous avez prise â Automatique · Lundi 16h UTC":"5.1 Stan reads every decision you made â Automatic · Monday 4 PM UTC"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Chaque NCL de Stan écrite sur les 7 derniers jours (depuis le filtre de la table des deals sur ",e.jsx("code",{children:"neural_command_line_final"}),") et chaque ",e.jsx("strong",{children:"OUI"})," / ",e.jsx("strong",{children:"NON"})," du CEO avec ",e.jsx("code",{children:"ceo_decision_date"})," dans les 7 derniers jours est fetché dâAirtable en parallèle par le Thesis Evolution Engine."]}):e.jsxs(e.Fragment,{children:["Every Stan NCL written in the past 7 days (from the deals table filter on ",e.jsx("code",{children:"neural_command_line_final"}),") and every CEO ",e.jsx("strong",{children:"YES"})," / ",e.jsx("strong",{children:"NO"})," with ",e.jsx("code",{children:"ceo_decision_date"})," in the past 7 days is fetched from Airtable in parallel by the Thesis Evolution Engine."]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Les décisions du CEO sont formatées en marqueurs NCL avant dâatteindre le LLM : ",e.jsx("code",{children:"ð¢ CEO_YES"})," avec un ",e.jsx("code",{children:" WINNING_KEYWORD"})," extrait quand la note confirme le top pick de Stan, ",e.jsx("code",{children:"ð´ CEO_VETO"})," avec un ",e.jsx("code",{children:" TOXIC_KEYWORD"})," quand le CEO rejette le top pick de Stan. Ces marqueurs CEO transitent par le même pipeline NCL que les signaux de Stan â ce nâest pas une piste de priorité séparée, ils portent simplement des mots-clés particulièrement denses en information sur lesquels les règles de mutation du moteur agissent."]}):e.jsxs(e.Fragment,{children:["CEO decisions are formatted into NCL markers before reaching the LLM : ",e.jsx("code",{children:"ð¢ CEO_YES"})," with an extracted ",e.jsx("code",{children:" WINNING_KEYWORD"})," when the note confirms Stan's top pick, ",e.jsx("code",{children:"ð´ CEO_VETO"})," with a ",e.jsx("code",{children:" TOXIC_KEYWORD"})," when the CEO rejects Stan's top pick. These CEO markers flow through the same NCL pipeline as Stan's own signals â they are not a separate priority track, they simply carry particularly information-dense keywords that the engine's mutation rules act on."]})}),e.jsx("p",{className:"doc-text",children:r?"Les métriques de sourcing et de qualification par angle (match_rate, yes_rate, tendance 7 jours) sont calculées en parallèle et injectées dans le user prompt à côté des NCL pour que le moteur raisonne sur les tendances de volume, pas seulement sur les signaux individuels.":"Sourcing and qualification metrics per angle (match_rate, yes_rate, 7-day trend) are computed in parallel and injected into the user prompt alongside the NCLs so the engine can reason about volume trends, not just individual signals."}),e.jsx("span",{id:"s05-mutations",className:"doc-anchor"}),e.jsxs("h3",{className:"doc-h3",children:[r?"5.2 Le JSON de la Fund Thesis mute â Automatique · Lundi 16h UTC":"5.2 The Fund Thesis JSON mutates â Automatic · Monday 4 PM UTC"," ",e.jsx("span",{className:"doc-tag",children:"MAKE PROMPT ZONE"})]}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Le Weekly Evolution Engine est le scénario Make ",e.jsx("code",{children:"3517126"})," (8 modules, trigger lundi 16h UTC). Le module ",e.jsx("strong",{children:"246"})," POST les NCL de la semaine passée + la thèse courante à lâendpoint Modal ",e.jsx("code",{children:"/directive/thesis-update"})," (défini dans ",e.jsx("code",{children:"modal_proxy/stan_proxy.py"}),", OpenRouter ",e.jsx("code",{children:"google/gemini-2.5-flash"})," avec un system prompt de 300 lignes encodant des règles de mutation déterministes par type de signal, plus une boucle de retry de parsing JSON à 3 tentatives). Le LLM retourne le JSON de thè
3223se mis à jour complet, ensuite validé contre le ",e.jsx("strong",{children:"schéma fund_thesis v5.4"})," via Pydantic avant dâêtre patché dans Airtable. Si la validation échoue, la version précédente reste en place et lâéchec est consigné dans lâemail hebdo â il est mathématiquement impossible quâune thèse cassée atteigne la production. Le module ",e.jsx("strong",{children:"235"})," POST ensuite à ",e.jsx("code",{children:"/directive/weekly-email"})," pour rendre le corps de lâemail. Quatre familles de mutation embarquent à chaque cycle :"]}):e.jsxs(e.Fragment,{children:["The Weekly Evolution Engine is Make scenario ",e.jsx("code",{children:"3517126"})," (8 modules, Monday 4 PM UTC trigger). Module ",e.jsx("strong",{children:"246"})," POSTs the past week's NCLs + the current thesis to the Modal endpoint ",e.jsx("code",{children:"/directive/thesis-update"})," (defined in ",e.jsx("code",{children:"modal_proxy/stan_proxy.py"}),", OpenRouter ",e.jsx("code",{children:"google/gemini-2.5-flash"})," with a 300-line system prompt encoding deterministic mutation rules per signal type, plus a 3-attempt JSON-parse retry loop). The LLM returns the full updated thesis JSON which is then validated against the ",e.jsx("strong",{children:"fund_thesis v5.4 schema"})," via Pydantic before being patched into Airtable. If validation fails, the previous version stays live and the failure is logged in the weekly email â it is mathematically impossible for a broken thesis to reach production. Module ",e.jsx("strong",{children:"235"})," then POSTs to ",e.jsx("code",{children:"/directive/weekly-email"})," to render the email body. Four mutation families ship in each cycle:"]})}),e.jsx("div",{className:"grid-2",children:_5.map(l=>{const d=r?Z5(l):l;return e.jsxs("div",{className:"card",children:[e.jsxs("div",{className:"card-h",children:[l.emoji," ",d.title]}),e.jsx("div",{className:"card-p",children:d.desc})]},l.title)})}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Règles de mutation par NCL.":"Mutation rules per NCL."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Chaque NCL correspond à une famille de mutation spécifique avec une règle déterministe. Tout ce qui suit est le jeu de règles exact tournant dans le system prompt de production, déployé dans ",e.jsx("code",{children:"modal_proxy/stan_proxy.py"})," à lâendpoint ",e.jsx("code",{children:"/directive/thesis-update"}),", validant chaque sortie contre le schéma fund_thesis v5.4."]}):e.jsxs(e.Fragment,{children:["Each NCL maps to a specific mutation family with a deterministic rule. Everything below is the exact rule set running in the production system prompt, deployed in ",e.jsx("code",{children:"modal_proxy/stan_proxy.py"})," at endpoint ",e.jsx("code",{children:"/directive/thesis-update"}),", validating every output against the fund_thesis v5.4 schema."]})})]}),e.jsx("span",{id:"s05-pipeline",className:"doc-anchor"}),e.jsx("h4",{className:"doc-h4",children:r?"5.2.a Pipeline du moteur hebdo â 7 étapes":"5.2.a Weekly engine pipeline â 7 steps"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Ãtape":"Step"}),e.jsx("th",{children:r?"Nom":"Name"}),e.jsx("th",{children:r?"But":"Purpose"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"0"})}),e.jsx("td",{children:r?"Sécurité copy-first":"Copy-first safety"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Copie ",e.jsx("code",{children:"fund_thesis_vN"})," â ",e.jsx("code",{children:"v(N+1)"})," telle quelle. Les 8 clés de premier niveau doivent être présentes (meta · sourcing_config · binary_gates · entry_gates · financial_model_config · narrative_alpha · benchmarks · semantic_filters). Aucune reconstruction autorisée. En cas dâéchec â retour à ",e.jsx("code",{children:"vN"}),"."]}):e.jsxs(e.Fragment,{children:["Copy ",e.jsx("code",{children:"fund_thesis_vN"})," â ",e.jsx("code",{children:"v(N+1)"}
3223)," verbatim. 8 top-level keys must be present (meta · sourcing_config · binary_gates · entry_gates · financial_model_config · narrative_alpha · benchmarks · semantic_filters). No reconstruction allowed. On failure â revert to ",e.jsx("code",{children:"vN"}),"."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"1"})}),e.jsx("td",{children:r?"Parse des NCL":"Parse NCLs"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Extrait ",e.jsx("code",{children:"signal_type"}),", ",e.jsx("code",{children:"angle_id"}),", ",e.jsx("code",{children:"company"}),", ",e.jsx("code",{children:"concept"}),", ",e.jsx("code",{children:"narrative"}),", ",e.jsx("code",{children:"cycle_count"}),". Infère ",e.jsx("code",{children:"angle_id"})," si manquant."]}):e.jsxs(e.Fragment,{children:["Extract ",e.jsx("code",{children:"signal_type"}),", ",e.jsx("code",{children:"angle_id"}),", ",e.jsx("code",{children:"company"}),", ",e.jsx("code",{children:"concept"}),", ",e.jsx("code",{children:"narrative"}),", ",e.jsx("code",{children:"cycle_count"}),". Infer ",e.jsx("code",{children:"angle_id"})," if missing."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"2"})}),e.jsx("td",{children:r?"Règle de priorité":"Priority rule"}),e.jsx("td",{children:r?"Max 1 changement par champ par angle par cycle. Signaux en conflit résolus par ordre de priorité (voir 5.2.d).":"Max 1 change per field per angle per cycle. Conflicting signals resolved by priority order (see 5.2.d)."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"3"})}),e.jsx("td",{children:r?"Application des mutations":"Apply mutations"}),e.jsx("td",{children:r?"Route uniquement vers les sous-champs du bon angle. Jamais de contamination croisée entre angles. Voir 5.2.c pour les règles par-signal.":"Route to the correct angle's subfields only. Never cross-contaminate angles. See 5.2.c for per-signal rules."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"4"})}),e.jsx("td",{children:r?"Décroissance des flags":"Flag decay"}),e.jsx("td",{children:r?"Cycle de vie des green/red flags par-angle : compte de déclenchements, revue dâobsolescence, jamais dâauto-suppression.":"Per-angle green/red flag lifecycle: fire count, staleness review, never-auto-delete."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"5"})}),e.jsx("td",{children:r?"Rapport dâintelligence":"Intelligence report"}),e.jsx("td",{children:r?"Génère le payload de lâemail hebdo : signaux traités, changements appliqués, signaux en attente, décisions expirantes, blocs HTML.":"Generate the weekly email payload: signals processed, changes applied, pending signals, expiring decisions, HTML blocks."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"6"})}),e.jsx("td",{children:r?"Gate de validation":"Validation gate"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Exécute les contrôles schéma / meta / par-angle / cross-angle / globaux. Tout échec â retour à ",e.jsx("code",{children:"vN"}),"."]}):e.jsxs(e.Fragment,{children:["Run schema / meta / per-angle / cross-angle / global checks. Any failure â revert to ",e.jsx("code",{children:"vN"}),"."]})})]})]})]}),e.jsx("span",{id:"s05-ncl-structure",className:"doc-anchor"}),e.jsx("h4",{className:"doc-h4",children:"5.2.b Neural Command Line â structure"}),e.jsx("p",{className:"doc-text",children:r?"Chaque NCL alimente le moteur avec exactement ces champs :":"Each NCL feeds into the engine with exactly these fields:"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Champ":"Field"}),e.jsx("th",{children:r?"Ce quâil porte":"What it carries"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"angle_id"})}),e.jsx("td",{children:r?"Lâangle stratégique auquel ce signal appartient. Les mutations ne touchent que les sous-champs de cet angle.":"The strategic angle this signal belongs to. Mutations only touch this angle's subfields."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"signal_type"})}),e.jsx("td",{children:"CALL · OVERRIDE · SYNERGY_CALL · POISON · BLOCK · SYNERGY_BLOCK · RISK · SYNERGY_RISK · GAP · WATCHLIST · MARKET_VALIDATION · MONITOR"})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"company"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["La société évaluée. Utilisée comme candidate pour ",e.jsx("code",{children:"gold_anchor_pool"})," / ",e.jsx("code",{children:"competitor_anchors"})," / ",e.jsx("code",{children:"poison_anchor"}),"."]}):e.jsxs(e.Fragment,{children:["The company evaluated. Used as candidate for ",e.jsx("code",{children:"gold_anchor_pool"})," / ",e.jsx("code",{children:"competitor_anchors"})," / ",e.jsx("code",{children:"poison_anchor"}),"."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"concept"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"WINNING_KEYWORD"})," ou ",e.jsx("code",{children:"TOXIC_KEYWORD"})," â le concept dominant extrait du mémo GP."]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"WINNING_KEYWORD"})," or ",e.jsx("code",{children:"TOXIC_KEYWORD"})," â the dominant concept extracted from the GP memo."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"narrative"})}),e.jsx("td",{children:r?"Insight dâune phrase tiré du mémo. Utilisé dans le rapport dâintelligence, pas comme entrée de mutation.":"One-sentence insight from the memo. Used in the intelligence report, not as a mutation input."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"cycle_count"})}),e.jsx("td",{children:r?"Combien de cycles antérieurs ce même signal sâest déclenché pour cet angle+concept. Pilote les mutations à seuil.":"How many prior cycles this same signal has fired for this angle+concept. Drives threshold-based mutations."})]})]})]}),e.jsxs("div",{className:"callout warning",children:[e.jsx("strong",{children:r?"Les signaux NO_MATCH sont ignorés.":"NO_MATCH signals are ignored."}),e.jsx("p",{children:r?"Le verdict du LLM du gate est binaire (MATCH seulement). Les signaux NO_MATCH sont consignés dans Airtable mais nâalimentent jamais le moteur dâévolution.":"The Gate LLM verdict is binary (MATCH only). NO_MATCH signals are logged in Airtable but never feed the evolution engine."})]}),e.jsx("span",{id:"s05-rules",className:"doc-anchor"}),e.jsx("h4",{className:"doc-h4",children:r?"5.2.c Règles de mutation par signal":"5.2.c Mutation rules per signal"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Chaque signal route uniquement vers les sous-champs de lâangle cible (",e.jsx("code",{children:"sourcing_config.angles[angle_id]"}),", ",e.jsx("code",{children:" semantic_filters.angles[angle_id]"}),", ",e.jsx("code",{children:"benchmarks.angles[angle_id]"}),"). Aucun effet de bord cross-angle. Le moteur ne mute jamais ",e.jsx("code",{children:"entry_gates"}),", ",e.jsx("code",{children:" financial_model_config"}),", ni ",e.jsx("code",{children:"narrative_alpha.module_0_angle_detection_instruction"})," â ceux-là sont figés et seulement éditables depuis ",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"}),"."]}):e.jsxs(e.Fragment,{children:["Every signal routes to the target angle's subfields only (",e.jsx("code",{children:"sourcing_config.angles[angle_id]"}),", ",e.jsx("code",{children:" semantic_filters.angles[angle_id]"}),", ",e.jsx("code",{children:"benchmarks.angles[angle_id]"}),"). No cross-angle side-effects. The engine never mutates ",e.jsx("code",{children:"entry_gates"}),", ",e.jsx("code",{children:" financial_model_config"}),", or ",e.jsx("code",{children:"narrative_alpha.module_0_angle_detection_instruction"})," â those are frozen and only editable from ",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"}),"."]})}),e.jsx("div",{className:"doc-scroll",children:e.jsxs("table",{className:"doc-table doc-table-wide",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"Signal"}),e.jsx("th",{children:r?"Déclencheur":"Trigger"}),e.jsx("th",{children:"Sourcing config"}),e.jsx("th",{children:"Semantic filters"}),e.jsx("th",{children:"Benchmarks"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-call",children:"OVERRIDE"})}),e.jsx("td",{children:r?"Immédiat. 1 signal suffit. Priorité absolue.":"Immediate. 1 signal sufficient. Absolute priority."}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Ajoute à ",e.jsx("code",{children:"sectors_plain"})," / ",e.jsx("code",{children:"competitor_anchors"}),". Ajoute 1 ",e.jsx("code",{children:"exa_query"})," (remplace lâindex 0 si à 7). Ajoute 1 ",e.jsx("code",{children:"google_alert_query"})," (max 12). Remplace le ",e.jsx("code",{children:"apify_linkedin_posts_query"})," le plus générique."]}):e.jsxs(e.Fragment,{children:["Append to ",e.jsx("code",{children:"sectors_plain"})," / ",e.jsx("code",{children:"competitor_anchors"}),". Add 1 ",e.jsx("code",{children:"exa_query"})," (replace index 0 if at 7). Add 1 ",e.jsx("code",{children:"google_alert_query"})," (max 12). Replace the most generic ",e.jsx("code",{children:"apify_linkedin_posts_query"}),"."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Ajoute un ",e.jsx("code",{children:"green_flag"})," avec le registre à 7 champs. Promu à ",e.jsx("code",{children:"priority_flags"})," si ",e.jsx("code",{children:'query_weight="high"'})," et < 9 entrées."]}):e.jsxs(e.Fragment,{children:["Add ",e.jsx("code",{children:"green_flag"})," with the 7-field registry. Promote to ",e.jsx("code",{children:"priority_flags"})," if ",e.jsx("code",{children:'query_weight="high"'}
3223)," and < 9 entries."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Fait tourner ",e.jsx("code",{children:"gold_anchor_pool"})," : nouvelle entrée â [0], ancien [0] â [1], [1] â [2], [2] retiré. Met à jour ",e.jsx("code",{children:"gold_anchor"}),"."]}):e.jsxs(e.Fragment,{children:["Rotate ",e.jsx("code",{children:"gold_anchor_pool"}),": new entry â [0], old [0] â [1], [1] â [2], [2] removed. Update ",e.jsx("code",{children:"gold_anchor"}),"."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-call",children:"CALL · SYNERGY_CALL"})}),e.jsx("td",{children:r?"Seuil : 3 signaux sur ⥠2 cycles distincts (secteurs / concurrents) · 2 signaux sur ⥠2 cycles (google alerts).":"Threshold: 3 signals over ⥠2 distinct cycles (sectors / competitors) · 2 signals over ⥠2 cycles (google alerts)."}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Ajoute à ",e.jsx("code",{children:"sectors_plain"})," / ",e.jsx("code",{children:"competitor_anchors"}),". Ajoute ",e.jsx("code",{children:"google_alert_query"})," (remplace le plus proche si à 12)."]}):e.jsxs(e.Fragment,{children:["Append to ",e.jsx("code",{children:"sectors_plain"})," / ",e.jsx("code",{children:"competitor_anchors"}),". Append ",e.jsx("code",{children:"google_alert_query"})," (replace closest if at 12)."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Ajoute ou met à jour ",e.jsx("code",{children:"green_flag"}),". ",e.jsx("code",{children:"query_weight"})," passe à « high » à times_fired ⥠3."]}):e.jsxs(e.Fragment,{children:["Add or update ",e.jsx("code",{children:"green_flag"}),". ",e.jsx("code",{children:"query_weight"}),' promotes to "high" at times_fired ⥠3.']})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Met à jour le slot [0] de ",e.jsx("code",{children:"gold_anchor_pool"})," si la société est une référence plus forte que lâactuelle."]}):e.jsxs(e.Fragment,{children:["Update slot [0] of ",e.jsx("code",{children:"gold_anchor_pool"})," if company is a stronger reference than current."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-pass",children:"POISON"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Seuil scindé : 1 signal suffit pour retirer un secteur. ",e.jsx("code",{children:"reject_signal"})," nécessite times_fired ⥠2."]}):e.jsxs(e.Fragment,{children:["Threshold split: 1 signal sufficient to remove sector. ",e.jsx("code",{children:"reject_signal"})," needs times_fired ⥠2."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Retire 1 item de ",e.jsx("code",{children:"sectors_plain"})," si le ",e.jsx("code",{children:"TOXIC_KEYWORD"})," mappe sans ambiguïté. Ajoute 1 clause à ",e.jsx("code",{children:"reject_signal"})," (max 10 clauses, 8 mots)."]}):e.jsxs(e.Fragment,{children:["Remove 1 item from ",e.jsx("code",{children:"sectors_plain"})," if ",e.jsx("code",{children:"TOXIC_KEYWORD"})," maps unambiguously. Add 1 clause to ",e.jsx("code",{children:"reject_signal"})," (max 10 clauses, 8 words)."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Ajoute un ",e.jsx("code",{children:"red_flag"})," avec le registre à 7 champs."]}):e.jsxs(e.Fragment,{children:["Add ",e.jsx("code",{children:"red_flag"})," with the 7-field registry."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Ajoute 1â2 traits à ",e.jsx("code",{children:"poison_anchor_characteristics"})," (max 7, remplace le plus faible si plein). Met à jour ",e.jsx("code",{children:"poison_anchor"})," si plus extrême."]}):e.jsxs(e.Fragment,{children:["Add 1â2 traits to ",e.jsx("code",{children:"poison_anchor_characteristics"})," (max 7, replace weakest if full). Update ",e.jsx("code",{children:"poison_anchor"})," if more extreme."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-pass",children:"BLOCK · SYNERGY_BLOCK"})}),e.jsx("td",{children:r?"Confirmation seulement â le filtre de lâangle marche déjà .":"Confirmation only â the angle's filter is already working."}),e.jsx("td",{children:e.jsx("strong",{children:r?"Aucun changement, jamais.":"No change ever."})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Ajoute un ",e.jsx("code",{children:"red_flag"})," avec le registre à 7 champs."]}):e.jsxs(e.Fragment,{children:["Add ",e.jsx("code",{children:"red_flag"})," with the 7-field registry."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Ajoute 1 trait à ",e.jsx("code",{children:"poison_anchor_characteristics"}
3223)," si le block révèle un nouvel anti-pattern structurel."]}):e.jsxs(e.Fragment,{children:["Add 1 trait to ",e.jsx("code",{children:"poison_anchor_characteristics"})," if block reveals a new structural anti-pattern."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-consider",children:"RISK · SYNERGY_RISK · CONSIDER"})}),e.jsx("td",{children:r?"Flaggé pour revue CEO â résolution imposée en aval par la boucle de revue (le signal se résout en CALL/PASS), pas par ce moteur.":"Flagged for CEO review â resolution enforced downstream by the review loop (signal clears into CALL/PASS), not by this engine."}),e.jsx("td",{children:r?"Pas de changement.":"No change."}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Ajoute un flag ",e.jsx("code",{children:"red_soft"})," avec le registre à 7 champs."]}):e.jsxs(e.Fragment,{children:["Add ",e.jsx("code",{children:"red_soft"})," flag with the 7-field registry."]})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Consigne société + échéance dans ",e.jsx("code",{children:"expiring_soon"}),"."]}):e.jsxs(e.Fragment,{children:["Log company + deadline in ",e.jsx("code",{children:"expiring_soon"}),"."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"MARKET_VALIDATION"}),e.jsx("td",{children:r?"Immédiat. 1 signal suffit. La société a été ratée par le sourcing.":"Immediate. 1 signal sufficient. Company was missed by sourcing."}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Ajoute le secteur raté à ",e.jsx("code",{children:"sectors_plain"})," (max 12) + ",e.jsx("code",{children:"binary_gates.inclusions.sector"}),". Ajoute 1 ",e.jsx("code",{children:"google_alert_query"}),"."]}):e.jsxs(e.Fragment,{children:["Append missed sector to ",e.jsx("code",{children:"sectors_plain"})," (max 12) + ",e.jsx("code",{children:"binary_gates.inclusions.sector"}),". Add 1 ",e.jsx("code",{children:"google_alert_query"}),"."]})}),e.jsx("td",{children:r?"Pas de changement.":"No change."}),e.jsx("td",{children:r?"Pas de changement.":"No change."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:"WATCHLIST"}),e.jsx("td",{children:r?"Immédiat. 1 signal suffit. Concurrent intéressant.":"Immediate. 1 signal sufficient. Interesting competitor."}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Ajoute à ",e.jsx("code",{children:"competitor_anchors"})," (max 20). Ajoute à ",e.jsx("code",{children:"binary_gates.pending_inclusions"})," avec expiration à 90 jours."]}):e.jsxs(e.Fragment,{children:["Append to ",e.jsx("code",{children:"competitor_anchors"})," (max 20). Add to ",e.jsx("code",{children:"binary_gates.pending_inclusions"})," with 90-day expiry."]})}),e.jsx("td",{children:r?"Pas de changement.":"No change."}),e.jsx("td",{children:r?"Pas de changement.":"No change."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("span",{className:"verdict-pill v-monitor",children:"MONITOR · GAP"})}),e.jsx("td",{children:r?"Pas de seuil â log seulement.":"No threshold â log only."}),e.jsx("td",{children:r?"Pas de changement.":"No change."}),e.jsx("td",{children:r?"Pas de changement.":"No change."}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Pas de changement. Consigné dans ",e.jsx("code",{children:"pipeline_tracking"}),"."]}):e.jsxs(e.Fragment,{children:["No change. Logged in ",e.jsx("code",{children:"pipeline_tracking"}),"."]})})]})]})]})}),e.jsx("span",{id:"s05-priority",className:"doc-anchor"}),e.jsx("h4",{className:"doc-h4",children:r?"5.2.d Règles de priorité & de seuil":"5.2.d Priority & threshold rules"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Quand plusieurs signaux ciblent le ",e.jsx("strong",{children:"même champ du même angle"})," en un cycle, un maximum dâ",e.jsx("strong",{children:"un changement"})," est appliqué. Lâordre de priorité, du plus élevé au plus bas :"]}
3223):e.jsxs(e.Fragment,{children:["When multiple signals target the ",e.jsx("strong",{children:"same field of the same angle"})," in one cycle, a maximum of ",e.jsx("strong",{children:"one change"})," is applied. The priority order, highest to lowest:"]})}),e.jsx("pre",{className:"doc-code",children:"CEO_VETO > CEO_YES > OVERRIDE > CALL · SYNERGY_CALL > MARKET_VALIDATION > WATCHLIST > POISON"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Les signaux CEO sont en tête car ils portent le jugement direct du CEO â un verdict humain lâemporte sur un verdict machine sur le même champ. ",e.jsx("code",{children:"CEO_VETO"})," (le CEO a dit NON sur un top pick de Stan) est le plus fort signal du système ; il déclenche des mutations immédiates y compris ",e.jsx("code",{children:"narrative_alpha"})," â un champ quâaucun autre signal ne peut toucher. ",e.jsx("code",{children:"CEO_YES"})," avec note extrait un ",e.jsx("code",{children:"WINNING_KEYWORD"})," qui renforce les green flags et fait tourner le gold anchor pool. ",e.jsx("code",{children:"OVERRIDE"})," (le CEO pousse un PASS en CALL sans changer la logique sous-jacente de Stan) agit avec la même mécanique de priorité absolue mais sâapplique aux requêtes de sourcing, pas au narratif de qualification."]}):e.jsxs(e.Fragment,{children:["CEO signals sit at the top because they carry the CEO's direct judgment â a human verdict trumps a machine verdict on the same field. ",e.jsx("code",{children:"CEO_VETO"})," (CEO said NO on a Stan top pick) is the strongest signal in the system; it triggers immediate mutations including ",e.jsx("code",{children:"narrative_alpha"})," â a field no other signal can touch. ",e.jsx("code",{children:"CEO_YES"})," with a note extracts a ",e.jsx("code",{children:"WINNING_KEYWORD"})," that reinforces green flags and rotates the gold anchor pool. ",e.jsx("code",{children:"OVERRIDE"})," (CEO pushes a PASS to CALL without changing Stan's underlying logic) acts with the same absolute-priority mechanic but applies to sourcing queries, not qualification narrative."]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Les signaux qui perdent le conflit sont consignés dans ",e.jsx("code",{children:"pending_signals"})," pour lâangle et sâaccumulent vers le seuil du cycle suivant. Câest pourquoi un PASS isolé ne bouge jamais la thèse â trois patterns PASS répétés sur ⥠2 semaines distinctes, si. Les signaux CEO, eux, nâont besoin que dâune occurrence."]}):e.jsxs(e.Fragment,{children:["Signals that lose the conflict are logged in ",e.jsx("code",{children:"pending_signals"})," for the angle and accumulate toward the next cycle's threshold. This is why a single PASS never moves the thesis â three repeated PASS patterns over ⥠2 distinct weeks do. CEO signals, in contrast, need only one occurrence."]})}),e.jsx("span",{id:"s05-frozen",className:"doc-anchor"}),e.jsx("h4",{className:"doc-h4",children:r?"5.2.e Champs figés vs modifiables · limites de taille":"5.2.e Frozen vs updatable fields · size limits"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Champ":"Field"}),e.jsx("th",{children:r?"Politique":"Policy"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"sourcing_config.shared.single_gate"})}),e.jsxs("td",{children:[e.jsx("strong",{children:r?"FIGÃ":"FROZEN"})," â ",r?'jamais touché par des signaux automatisés. Format 2-STEP structuré (v7.5) · 200â1000 car. · DOIT contenir les tokens littéraux "STEP 1" et "STEP 2".':'never touched by automated signals. Structured 2-STEP format (v7.5) · 200â1000 chars · MUST contain the literal tokens "STEP 1" and "STEP 2".']})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"sourcing_config.shared.cities"})}),e.jsxs("td",{children:[e.jsx("strong",{children:r?"FIGÃ":"FROZEN"}),". ",r?"Hubs économiques principaux par défaut (London, Paris, Berlin, Amsterdam, Madrid, Barcelona, Milan, Dublin, Stockholm, Zurich). Villes secondaires seulement pour des thèses explicitement régionales.":"Primary business hubs by default (London, Paris, Berlin, Amsterdam, Madrid, Barcelona, Milan, Dublin, Stockholm, Zurich). Secondary cities only for explicitly regional theses."]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"sourcing_config.shared.founder_exodus_sources"})}),e.jsxs("td",{children:[e.jsx("strong",{children:r?"FIGÃ":"FROZEN"}),"."]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"sourcing_config.shared.naf_codes"})}),e.jsxs("td",{children:[e.jsx("strong",{children:r?"FIGÃ":"FROZEN"}),"."]})]}),e.jsxs("tr",{children:[e.jsxs("td",{children:[e.jsx("code",{children:"sourcing_config.shared.near_miss_examples"})," ",e.jsx("em",{children:"(v7.5)"})]}),e.jsxs("td",{children:[e.jsx("strong",{children:r?"VIVANT":"LIVING"})," â ",r?"grandit automatiquement quand le CEO clique « â Flag FP » sur un MATCH faux-positif dans Airtable. Ãlaguable manuellement depuis lâassistant. Injecté dans le prompt du gate au runtime. Aucun LLM ne touche cette liste â seulement le feedback humain et lâendpoint « Flag FP ».":'grows automatically when the CEO clicks "â Flag FP" on a false-positive MATCH in Airtable. Can be pruned manually from the wizard. Injected into the gate prompt at runtime. No LLM touches this list â only human feedback and the "Flag FP" endpoint.']})]})]})]}),e.jsx("p",{className:"doc-text",children:e.jsx("strong",{children:r?"Limites de taille dures et règles de forme par angle :":"Hard size limits and shape rules per angle:"})}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Champ":"Field"}),e.jsx("th",{children:r?"Règle":"Rule"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"exa_queries"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Exactement ",e.jsx("strong",{children:"7 phrases"}),'. Chaque phrase doit commencer par le préfixe littéral "Here is a " â ça déclenche le mode neural dâExa. OVERRIDE préfixe une nouvelle phrase à lâindex 0 ; si le pool est déjà à 7, la plus ancienne entrée est retirée.']}):e.jsxs(e.Fragment,{children:["Exactly ",e.jsx("strong",{children:"7 phrases"}),`. Every phrase must start with the literal prefix "Here is a " â this triggers Exa's neural mode. OVERRIDE prepends a new phrase at index 0; if the pool is already at 7, the oldest entry is dropped.`]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"apify_linkedin_posts_queries"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Exactement ",e.jsx("strong",{children:"4 requêtes"}),", une par type de signal, avec des index fixes : ",e.jsx("code",{children:"[0] funding"})," · ",e.jsx("code",{children:"[1] hiring commercial"})," · ",e.jsx("code",{children:"[2] launch"})," · ",e.jsx("code",{children:"[3] traction"}),". La règle est que chaque requête attrape un signal que les trois autres nâattrapent pas â le chevauchement est traité comme une mauvaise config."]}):e.jsxs(e.Fragment,{children:["Exactly ",e.jsx("strong",{children:"4 queries"}),", one per signal type, with fixed indices: ",e.jsx("code",{children:"[0] funding"})," · ",e.jsx("code",{children:"[1] hiring commercial"})," · ",e.jsx("code",{children:"[2] launch"})," · ",e.jsx("code",{children:"[3] traction"}),". The rule is that each query catches a signal the other three don't â overlap is treated as misconfiguration."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"apify_linkedin_jobs_calendar"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Exactement ",e.jsx("strong",{children:"7 entrées"}),", une par jour de la semaine (MONâSUN). Chaque entrée a son propre rôle + mots-clés (recommandé : MON Partnerships · TUE VP Sales · WED Engineering · THU Finance · FRI CTO · SAT Growth · SUN Legal). Le champ ",e.jsx("code",{children:"city"})," est ",e.jsx("strong",{children:'toujours la chaîne littérale "Europe"'})," â jamais une ville précise."]}):e.jsxs(e.Fragment,{children:["Exactly ",e.jsx("strong",{children:"7 entries"}),", one per weekday (MONâSUN). Each entry has its own role + keywords (recommended: MON Partnerships · TUE VP Sales · WED Engineering · THU Finance · FRI CTO · SAT Growth · SUN Legal). The ",e.jsx("code",{children:"city"})," field is ",e.jsx("strong",{children:'always the literal string "Europe"'})," â never a specific city."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"apify_crunchbase_calendar"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Exactement ",e.jsx("strong",{children:"7 entrées"})," (MONâSUN), chacune définissant un tuple ",e.jsx("code",{children:"{day, city, industry, employees, description_keywords}"}),". ",e.jsx("strong",{children:"Industry :"})," choisissez la catégorie la plus spécifique du ",e.jsx("a",{href:"https://support.crunchbase.com/hc/en-us/articles/27690673553555-Glossary-of-
3223Industries",target:"_blank",rel:"noreferrer",children:"Glossaire Crunchbase officiel"})," (700+ catégories). Les catégories génériques (Software, Hotel, Travel, FinTechâ¦) sont permises quand elles sont le meilleur match disponible. Tranches de taille : ",e.jsx("code",{children:"1-10"})," · ",e.jsx("code",{children:"11-50"})," · ",e.jsx("code",{children:"51-100"})," · ",e.jsx("code",{children:"101-250"})," · ",e.jsx("code",{children:"251-500"})," · ",e.jsx("code",{children:"500-1000"}),". ",e.jsx("strong",{children:"City :"})," les capitales SONT permises (London, Paris, Berlin, Amsterdamâ¦) quand elles sont le vrai hub de votre vertical â pas de hard-block. ",e.jsx("strong",{children:"description_keywords (v7.5.3, optionnel mais recommandé) :"})," 1â3 mots-clés séparés par retour à la ligne qui doivent apparaître dans la description Crunchbase dâun candidat pertinent â restreint drastiquement le pool quand lâindustrie est générique. Le moteur applique automatiquement ",e.jsx("code",{children:"funding_date_from = today â 5 years"})," sur chaque requête, donc seules les sociétés récemment financées reviennent."]}):e.jsxs(e.Fragment,{children:["Exactly ",e.jsx("strong",{children:"7 entries"})," (MONâSUN), each defining a ",e.jsx("code",{children:"{day, city, industry, employees, description_keywords}"})," tuple. ",e.jsx("strong",{children:"Industry:"})," pick the most specific category from the ",e.jsx("a",{href:"https://support.crunchbase.com/hc/en-us/articles/27690673553555-Glossary-of-Industries",target:"_blank",rel:"noreferrer",children:"official Crunchbase Glossary"})," (700+ categories). Generic categories (Software, Hotel, Travel, FinTechâ¦) are allowed when they are the best available match. Size bands: ",e.jsx("code",{children:"1-10"})," · ",e.jsx("code",{children:"11-50"})," · ",e.jsx("code",{children:"51-100"})," · ",e.jsx("code",{children:"101-250"})," · ",e.jsx("code",{children:"251-500"})," · ",e.jsx("code",{children:"500-1000"}),". ",e.jsx("strong",{children:"City:"})," capitals ARE allowed (London, Paris, Berlin, Amsterdamâ¦) when they are the real hub of your vertical â no hard-block. ",e.jsx("strong",{children:"description_keywords (v7.5.3, optional but recommended):"})," 1â3 newline-separated keywords that must appear in the Crunchbase description of a relevant candidate â narrows the pool drastically when industry is generic. The engine auto-applies ",e.jsx("code",{children:"funding_date_from = today â 5 years"})," on every query, so only recently funded companies come back."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"sectors_plain"})}),e.jsx("td",{children:r?"8 entrées au setup (3â6 mots chacune, langage naturel), max 12 après enrichissement hebdo.":"8 entries at setup (3â6 words each, natural language), max 12 after weekly enrichment."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"competitor_anchors"})}),e.jsx("td",{children:r?"10 au setup, max 20 après enrichissement hebdo. Le gold anchor doit figurer dans cette liste.":"10 at setup, max 20 after weekly enrichment. The gold anchor must appear in this list."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"google_alert_queries"})}),e.jsx("td",{children:r?"8 expressions booléennes au setup, max 12. Au moins une doit être en français si la France est dans le périmètre géographique de lâangle.":"8 boolean expressions at setup, max 12. At least one must be in French if France is in the angle's geography scope."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["clauses ",e.jsx("code",{children:"reject_signal"})]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"reject_signal"})," clauses"]})}),e.jsx("td",{children:r?"⤠10 clauses, chaque clause ⤠8 mots.":"⤠10 clauses, each clause ⤠8 words."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"priority_flags"})}),e.jsx("td",{children:r?"4 à 7 entrées, chacune ⤠40 caractères.":"4 to 7 entries, each ⤠40 characters."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"green_flags"})}),e.jsx("td",{children:r?"8 initialement, jusquâà 15 après mutations hebdo, chacune ⤠40 caractères.":"8 initially, up to 15 after weekly mutations, each ⤠40 characters."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"red_flags"})}),e.jsx("td",{children:r?"4 initialement, jusquâà 8 après mutations hebdo, chacune ⤠40 caractères.":"4 initially, up to 8 after weekly mutations, each ⤠40 characters."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("code",{children:"poison_anchor_characteristics"})}),e.jsx("td",{children:r?"5 à 7 traits, chacun ⤠60 caractères. Plafond dur à 7 â le plus faible est remplacé quand câest plein.":"5 to 7 traits, each ⤠60 characters. Hard ceiling at 7 â the weakest is replaced when full."})]})]})]}),e.jsx("span",{id:"s05-rebalance",className:"doc-anchor"}),e.jsx("h4",{className:"doc-h4",children:r?"5.2.f Cycle de vie & décroissance des flags":"5.2.f Flag lifecycle & decay"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Chaque green / red flag dans ",e.jsx("code",{children:"semantic_filters.angles[id]"})," porte le ",e.jsx("strong",{children:"registre à 7 champs"})," :"]}):e.jsxs(e.Fragment,{children:["Every green / red flag in ",e.jsx("code",{children:"semantic_filters.angles[id]"})," carries the ",e.jsx("strong",{children:"7-field registry"}),":"]})}),e.jsx("pre",{className:"doc-code",children:`{ flag, type, times_fired, 3224 times_evaluated_without_firing, last_fired, 3225 decay_status, query_weight }`}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:["Déclenché cette semaine â ",e.jsx("code",{children:"times_fired +1"}),", ",e.jsx("code",{children:"last_fired = today"}),", ",e.jsx("code",{children:'decay_status = "active"'}),"."]}),e.jsxs("li",{children:["Pas déclenché â ",e.jsx("code",{children:"times_evaluated_without_firing +1"}),"."]}),e.jsxs("li",{children:[e.jsx("code",{children:"times_evaluated_without_firing ⥠20"})," OU ",e.jsx("code",{children:"today â last_fired > 365 days"})," â ",e.jsx("code",{children:'decay_status = "review_pending"'}),", retiré de ",e.jsx("code",{children:"priority_flags"}),", consigné dans ",e.jsx("code",{children:"flags_due_for_review"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Les flags ne sont jamais supprimés automatiquement."})," Ils restent dans ",e.jsx("code",{children:"green_flags"})," / ",e.jsx("code",{children:"red_flags"})," avec ",e.jsx("code",{children:'decay_status = "review_pending"'})," jusquâà ce que le CEO les élague manuellement à la prochaine revue de setup trimestrielle."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:["Fired this week â ",e.jsx("code",{children:"times_fired +1"}),", ",e.jsx("code",{children:"last_fired = today"}),", ",e.jsx("code",{children:'decay_status = "active"'}),"."]}),e.jsxs("li",{children:["Not fired â ",e.jsx("code",{children:"times_evaluated_without_firing +1"}),"."]}),e.jsxs("li",{children:[e.jsx("code",{children:"times_evaluated_without_firing ⥠20"})," OR ",e.jsx("code",{children:"today â last_fired > 365 days"})," â ",e.jsx("code",{children:'decay_status = "review_pending"'}),", removed from ",e.jsx("code",{children:"priority_flags"}),", logged in ",e.jsx("code",{children:"flags_due_for_review"}),"."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"Flags are never deleted automatically."})," They stay in ",e.jsx("code",{children:"green_flags"})," / ",e.jsx("code",{children:"red_flags"})," with ",e.jsx("code",{children:'decay_status = "review_pending"'})," until the CEO prunes them manually at the next quarterly setup review."]})]})}),e.jsxs("div",{className:"callout",children:[e.jsx("strong",{children:r?"Pas de score /100 en v5.4.":"No score /100 in v5.4."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["La thèse ne porte plus ",e.jsx("code",{children:"scoring_weights"}),". Le GP Synthétique rend un verdict qualitatif (CALL · CONSIDER · MONITOR · PASS) basé sur le narratif, les priority flags et les gold / poison anchors â pas un score numérique."]}):e.jsxs(e.Fragment,{children:["The thesis no longer carries ",e.jsx("code",{children:"scoring_weights"}),". The GP Synthétique renders a qualitative verdict (CALL · CONSIDER · MONITOR · PASS) based on the narrative, priority flags and gold / poison anchors â not a numeric score."]})})]}),e.jsx("span",{id:"s05-validation",className:"doc-anchor"}),e.jsx("h4",{className:"doc-h4",children:r?"5.2.g Gate de validation â 13 règles, tout échec revient à v(N)":"5.2.g Validation gate â 13 rules, any failure reverts to v(N)"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Avant de publier ",e.jsx("code",{children:"v(N+1)"}),", le moteur exécute une passe de validation dure contre le schéma fund_thesis v5.4. Si lâune des 13 règles ci-dessous échoue, la nouvelle version est jetée et la thèse courante reste inchangée. Lâéchec est consigné dans ",e.jsx("code",{children:"intelligence_report.system_notes"})," pour que vous voyiez exactement ce qui a bloqué la mise à jour â les mêmes 13 règles sont évaluées en direct dans lâassistant, donc un CEO qui édite manuellement voit le bouton « Save to Airtable » rester grisé jusquâà ce que chaque règle soit verte."]}):e.jsxs(e.Fragment,{children:["Before publishing ",e.jsx("code",{children:"v(N+1)"}),", the engine runs a hard validation pass against the fund_thesis v5.4 schema. If any of the 13 rules below fail
3225s, the new version is discarded and the current thesis stays unchanged. The failure is logged in ",e.jsx("code",{children:"intelligence_report.system_notes"}),' so you see exactly what blocked the update â the same 13 rules are evaluated live inside the wizard, so a CEO editing manually sees the "Save to Airtable" button stay greyed out until every rule is green.']})}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:"#"}),e.jsx("th",{children:r?"Règle":"Rule"}),e.jsx("th",{children:r?"Ãchoue si":"Fails if"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"1"})}),e.jsx("td",{children:e.jsx("strong",{children:r?"Exactement 8 clés de premier niveau":"8 top-level keys exactly"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Lâune des 8 clés manque ou une clé parasite est présente. Les 8 sont : ",e.jsx("code",{children:"meta"})," · ",e.jsx("code",{children:"sourcing_config"})," · ",e.jsx("code",{children:"binary_gates"})," · ",e.jsx("code",{children:"entry_gates"})," · ",e.jsx("code",{children:"financial_model_config"})," · ",e.jsx("code",{children:"narrative_alpha"})," · ",e.jsx("code",{children:"benchmarks"})," · ",e.jsx("code",{children:"semantic_filters"}),". ",e.jsx("code",{children:"scoring_weights"})," et ",e.jsx("code",{children:"valuation_discipline"})," ont été retirés en v5.4."]}):e.jsxs(e.Fragment,{children:["Any of the 8 keys is missing or a stray key is present. The 8 are: ",e.jsx("code",{children:"meta"})," · ",e.jsx("code",{children:"sourcing_config"})," · ",e.jsx("code",{children:"binary_gates"})," · ",e.jsx("code",{children:"entry_gates"})," · ",e.jsx("code",{children:"financial_model_config"})," · ",e.jsx("code",{children:"narrative_alpha"})," · ",e.jsx("code",{children:"benchmarks"})," · ",e.jsx("code",{children:"semantic_filters"}),". ",e.jsx("code",{children:"scoring_weights"})," and ",e.jsx("code",{children:"valuation_discipline"})," were removed in v5.4."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"2"})}),e.jsx("td",{children:e.jsx("strong",{children:r?"meta.angles_active concorde partout":"meta.angles_active matches everywhere"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Tout ",e.jsx("code",{children:"angle_id"})," dans ",e.jsx("code",{children:"sourcing_config.angles"}),", ",e.jsx("code",{children:"narrative_alpha.angles"}),", ",e.jsx("code",{children:"benchmarks.angles"})," ou ",e.jsx("code",{children:"semantic_filters.angles"})," nâest pas dans ",e.jsx("code",{children:"meta.angles_active"}),", ou vice versa."]}):e.jsxs(e.Fragment,{children:["Any ",e.jsx("code",{children:"angle_id"})," in ",e.jsx("code",{children:"sourcing_config.angles"}),", ",e.jsx("code",{children:"narrative_alpha.angles"}),", ",e.jsx("code",{children:"benchmarks.angles"})," or ",e.jsx("code",{children:"semantic_filters.angles"})," is not in ",e.jsx("code",{children:"meta.angles_active"}),", or vice versa."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"3"})}),e.jsx("td",{children:e.jsx("strong",{children:r?"sourcing_config.shared a les 4 champs requis (+ champs optionnels v6/v7.5)":"sourcing_config.shared has the 4 required fields (+ optional v6/v7.5 fields)"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Les 4 champs requis sont : ",e.jsx("code",{children:"single_gate"})," · ",e.jsx("code",{children:"cities"})," · ",e.jsx("code",{children:"founder_exodus_sources"})," · ",e.jsx("code",{children:"naf_codes"}),". Si lâun manque = échec. Les champs v6 optionnels (",e.jsx("code",{children:"sectors_weekly"}),", ",e.jsx("code",{children:"alerts_weekly"}),", ",e.jsx("code",{children:"backfill_sources"}),") et le champ v7.5 (",e.jsx("code",{children:"near_miss_examples"}),") sont préservés si présents mais pas obligatoires pour la validation."]}):e.jsxs(e.Fragment,{children:["The 4 required fields are: ",e.jsx("code",{children:"single_gate"})," · ",e.jsx("code",{children:"cities"})," · ",e.jsx("code",{children:"founder_exodus_sources"})," · ",e.jsx("code",{children:"naf_codes"}),". Any of these missing = failure. Optional v6 fields (",e.jsx("code",{children:"sectors_weekly"}),", ",e.jsx("code",{children:"alerts_weekly"}),", ",e.jsx("code",{children:"backfill_sources"}),") and v7.5 field (",e.jsx("code",{children:"near_miss_examples"}),") are preserved if present but not mandatory for validation."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"4"})}),e.jsx("td",{children:e.jsx("strong",{children:r?"Par angle : longueur exa_queries = 7":"Per angle: exa_queries length = 7"})}),e.jsx("td",{children:r?"Un angle a moins ou plus de 7 requêtes Exa.":"Any angle has fewer or more than 7 Exa queries."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"5"})}),e.jsx("td",{children:e.jsx("strong",{children:r?'Chaque exa_query commence par "Here is a "':'Every exa_query starts with "Here is a "'})}),e.jsx("td",{children:r?'Une requête dâun angle ne commence pas par le préfixe littéral "Here is a ".':'Any query in any angle does not start with the literal prefix "Here is a ".'})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"6"})}),e.jsx("td",{children:e.jsx("strong",{children:r?"Par angle : longueur apify_linkedin_posts_queries = 4":"Per angle: apify_linkedin_posts_queries length = 4"})}),e.jsx("td",{children:r?"Un angle a moins ou plus de 4 requêtes LinkedIn Posts. Les index [0..3] sont fixés à funding / hiring commercial / launch / traction.":"Any angle has fewer or more than 4 LinkedIn Posts queries. Indices [0..3] are fixed to funding / hiring commercial / launch / traction."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"7"})}),e.jsx("td",{children:e.jsx("strong",{children:r?"Par angle : longueur apify_linkedin_jobs_calendar = 7":"Per angle: apify_linkedin_jobs_calendar length = 7"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Un angle a moins ou plus de 7 entrées quotidiennes, ou le champ ",e.jsx("code",{children:"city"}),' dâune entrée nâest pas la chaîne littérale "Europe".']}):e.jsxs(e.Fragment,{children:["Any angle has fewer or more than 7 daily entries, or any entry's ",e.jsx("code",{children:"city"}),' field is not the literal string "Europe".']})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"8"})}),e.jsx("td",{children:e.jsx("strong",{children:r?"Par angle : longueur apify_crunchbase_calendar = 7":"Per angle: apify_crunchbase_calendar length = 7"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Un angle a moins ou plus de 7 entrées quotidiennes, ou une entrée a un ",e.jsx("code",{children:"industry"})," ou ",e.jsx("code",{children:"city"})," vide. Lâindustry doit être une vraie catégorie Crunchbase (voir le ",e.jsx("a",{href:"https://support.crunchbase.com/hc/en-us/articles/27690673553555-Glossary-of-
3225Industries",target:"_blank",rel:"noreferrer",children:"glossaire officiel"}),") mais aucune allow-list dure nâest imposée â une catégorie large est valide si câest ce quâun fondateur taguerait vraiment. Depuis v7.5.2, il nây a ",e.jsx("strong",{children:"plus de ban-list de villes"})," non plus (les capitales sont permises). ",e.jsx("code",{children:"description_keywords"})," est optionnel par entrée (v7.5.3)."]}):e.jsxs(e.Fragment,{children:["Any angle has fewer or more than 7 daily entries, or any entry has an empty ",e.jsx("code",{children:"industry"})," or ",e.jsx("code",{children:"city"}),". The industry must be a real Crunchbase category (see the ",e.jsx("a",{href:"https://support.crunchbase.com/hc/en-us/articles/27690673553555-Glossary-of-Industries",target:"_blank",rel:"noreferrer",children:"official glossary"}),") but no hard allow-list is enforced â a broad category is valid if it's what a founder would actually tag. Since v7.5.2, there is ",e.jsx("strong",{children:"no city ban-list"})," either (capitals are allowed). ",e.jsx("code",{children:"description_keywords"})," is optional per entry (v7.5.3)."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"9"})}),e.jsx("td",{children:e.jsx("strong",{children:r?"sector_profile dans lâenum":"sector_profile in enum"})}),e.jsxs("td",{children:[e.jsx("code",{children:"financial_model_config.sector_profile"})," ",r?"nâest pas lâun de":"is not one of"," ","{"," b2b_travel_saas · ai_native_saas · fintech_payment_rails · marketplace_b2b ","}","."]})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"10"})}),e.jsx("td",{children:e.jsx("strong",{children:r?"Bloc du mode actif rempli, hurdles non-null":"Active mode block populated, hurdles non-null"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Seul le bloc de config du mode actif (",e.jsx("code",{children:"vc_config"})," / ",e.jsx("code",{children:"lbo_config"})," / ",e.jsx("code",{children:"ma_config"}),") est rempli et tous ses hurdles sont non-null. Les autres blocs de mode doivent être ",e.jsx("code",{children:"null"}),"."]}):e.jsxs(e.Fragment,{children:["Only the active mode's config block (",e.jsx("code",{children:"vc_config"})," / ",e.jsx("code",{children:"lbo_config"})," / ",e.jsx("code",{children:"ma_config"}),") is populated and all its hurdles are non-null. The other mode blocks must be ",e.jsx("code",{children:"null"}),"."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"11"})}),e.jsx("td",{children:e.jsx("strong",{children:"gold_anchor = gold_anchor_pool[0].company, unique cross-angle"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Le ",e.jsx("code",{children:"gold_anchor"})," dâun angle ne correspond pas à son propre ",e.jsx("code",{children:"gold_anchor_pool[0].company"}),", ou deux angles partagent le même ",e.jsx("code",{children:"gold_anchor"}),". Les slots [1] et [2] restent des placeholders ",e.jsx("code",{children:'"__REPLACE__"'})," jusquâà ce que la rotation les remplisse."]}):e.jsxs(e.Fragment,{children:["Any angle's ",e.jsx("code",{children:"gold_anchor"})," does not match its own ",e.jsx("code",{children:"gold_anchor_pool[0].company"}),", or two angles share the same ",e.jsx("code",{children:"gold_anchor"}),". Slots [1] and [2] stay as ",e.jsx("code",{children:'"__REPLACE__"'})," placeholders until rotation fills them."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"12"})}),e.jsx("td",{children:e.jsx("strong",{children:r?"buyer_context + narrative par angle non vides":"buyer_context + narrative per angle non-empty"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"meta.buyer_context"})," est vide ou le ",e.jsx("code",{children:"narrative_alpha.angles[id].narrative"})," dâun angle est vide. Le narratif doit encoder les 5 éléments obligatoires (gap stratégique · MUST_ACQUIRE · PERFECT_WINDOW · fondateur idéal · logique 1+1=3)."]}):e.jsxs(e.Fragment,{children:[e.jsx("code",{children:"meta.buyer_context"})," is empty or any angle's ",e.jsx("code",{children:"narrative_alpha.angles[id].narrative"})," is empty. The narrative must encode the 5 mandatory elements (strategic gap · MUST_ACQUIRE · PERFECT_WINDOW · ideal founder · 1+1=3 logic)."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:"13"})}),e.jsx("td",{children:e.jsx("strong",{children:r?"benchmarks : poison_anchor_characteristics ⥠5 par angle":"benchmarks: poison_anchor_characteristics ⥠5 per angle"})}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Un angle a moins de 5 entrées dans ",e.jsx("code",{children:"poison_anchor_characteristics"}),". Le plafond dur est 7."]}):e.jsxs(e.Fragment,{children:["Any angle has fewer than 5 entries in ",e.jsx("code",{children:"poison_anchor_characteristics"}),". The hard ceiling is 7."]})})]})]})]}),e.jsxs("div",{className:"callout info",style:{marginTop:12},children:[e.jsx("strong",{children:r?"Pourquoi câest important.":"Why this matters."}),e.jsx("p",{children:r?'Ces 13 règles sont le contrat entre la thèse et chaque système en aval â moteur
3225s de sourcing, entry filter, GP Synthétique, modèle financier, moteur hebdo. Une seule violation nâimporte où dans le JSON casserait silencieusement lâun dâeux (une faute de frappe dâindustry Crunchbase renvoie zéro résultat sans lever dâerreur, un préfixe "Here is a " manquant fait retomber le mode neural dâExa en simple recherche par mots-clés). Valider en amont est la seule façon de garder le pipeline honnête.':`These 13 rules are the contract between the thesis and every downstream system â sourcing engines, entry filter, GP Synthetique, financial model, weekly engine. A single violation anywhere in the JSON would silently break one of them (a Crunchbase industry typo returns zero results without raising an error, a missing "Here is a " prefix collapses Exa's neural mode to plain keyword search). Validating upfront is the only way to keep the pipeline honest.`})]}),e.jsx("span",{id:"s05-write-paths",className:"doc-anchor"}),e.jsx("h4",{className:"doc-h4",children:r?e.jsxs(e.Fragment,{children:["5.2.h Les 3 voies dâécriture de ",e.jsx("code",{children:"fund_thesis"})]}):e.jsxs(e.Fragment,{children:["5.2.h The 3 write paths for ",e.jsx("code",{children:"fund_thesis"})]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Airtable reste la source unique de vérité. Seuls trois processus sont autorisés à écrire dans la colonne ",e.jsx("code",{children:" fund_type.fund_thesis"}),", et tous trois passent par le validateur Pydantic v5.4 avant tout PATCH â il est mathématiquement impossible quâun JSON hors-schéma atteigne la production par ces voies."]}):e.jsxs(e.Fragment,{children:["Airtable stays the single source of truth. Only three processes are allowed to write to the ",e.jsx("code",{children:" fund_type.fund_thesis"})," column, and all three go through the Pydantic v5.4 validator before any PATCH â it is mathematically impossible for an off-schema JSON to reach production through these paths."]})}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Voie":"Path"}),e.jsx("th",{children:r?"Quand":"When"}),e.jsx("th",{children:r?"Garde-fou":"Safeguard"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?e.jsxs(e.Fragment,{children:["App assistant sur ",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"})]}):e.jsxs(e.Fragment,{children:["Wizard app at ",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"})]})})}),e.jsx("td",{children:r?"à chaque édition manuelle du CEO":"Anytime the CEO edits manually"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Validation Pydantic en direct à chaque frappe (debounce 500 ms). Le bouton « Save to Airtable » reste désactivé tant que ",e.jsx("code",{children:"valid: false"}),". Une boîte de confirmation sâouvre avant le PATCH. Un avertissement ",e.jsx("code",{children:"beforeunload"})," bloque la navigation hors des éditions non sauvegardées."]}):e.jsxs(e.Fragment,{children:['Live Pydantic validation on every keystroke (500 ms debounce). The "Save to Airtable" button stays disabled while ',e.jsx("code",{children:"valid: false"}),". A confirm dialog fires before the PATCH. A ",e.jsx("code",{children:"beforeunload"})," warning blocks navigation away from unsaved edits."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"Scénario Make dâonboarding (jour 7)":"Make onboarding scenario (day 7)"})}),e.jsx("td",{children:r?"Une fois, pendant lâonboarding dâun nouveau fonds":"Once, during onboarding of a new fund"}),e.jsx("td",{children:r?e.jsxs(e.Fragment,{children:["Le LLM produit un JSON v5.4 depuis les prompts stricts de création de thèse (system + user). Le scénario appelle ",e.jsx("code",{children:"POST /directive/thesis-validate"})," avant le PATCH et relance le LLM jusquâà 3à avec les erreurs de validation réinjectées. Ãchec final â CSM notifié, aucune écriture."]}):e.jsxs(e.Fragment,{children:["The LLM produces a v5.4 JSON from the strict thesis-creation prompts (system + user). The scenario calls ",e.jsx("code",{children:"POST /directive/thesis-validate"})," before PATCH and retries the LLM up to 3à with validation errors re-injected. Final failure â CSM notified, no write happens."]})})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?e.jsxs(e.Fragment,{children:["Moteur hebdo sur ",e.jsx("code",{children:"/directive/thesis-update"})]}):e.jsxs(e.Fragment,{children:["Weekly engine at ",e.jsx("code",{children:"/directive/thesis-update"})]})})}),e.jsx("td",{children:r?"Chaque lundi 16h UTC":"Every Monday 4 PM UTC"}),e.jsx("td",{children:r?"Copy-First Safety Protocol : la v(N+1) produite par le LLM est validée avant écriture. Toute erreur Pydantic â v(N+1) jetée, Airtable reste à v(N), lâemail hebdo signale lâéchec.":"C
3225opy-First Safety Protocol: the v(N+1) produced by the LLM is validated before being written. Any Pydantic error â v(N+1) discarded, Airtable stays at v(N), weekly email flags the failure."})]})]})]}),e.jsxs("div",{className:"callout warning",style:{marginTop:16},children:[e.jsx("strong",{children:r?"Ne jamais éditer Airtable directement.":"Never edit Airtable directly."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["La colonne ",e.jsx("code",{children:"fund_thesis"})," est gérée exclusivement par ces trois voies. Une édition manuelle dans Airtable contourne le validateur et peut casser le sourcing quotidien, le modèle financier ou le moteur hebdo. Si vous avez besoin dâun ajustement rapide : ouvrez ",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"}),", éditez, sauvegardez."]}):e.jsxs(e.Fragment,{children:["The ",e.jsx("code",{children:"fund_thesis"})," column is managed exclusively by these three paths. A manual edit in Airtable bypasses the validator and can break daily sourcing, the financial model, or the weekly engine. If you need a quick adjustment: open ",e.jsx("code",{children:"analysis.proplace.co/thesis/?fund=<slug>"}),", edit, save."]})})]}),e.jsx("span",{id:"s05-loop",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:r?"5.3 Le deal flow du mardi est déjà plus précis â Compose · chaque semaine":"5.3 Tuesday's deal flow is already sharper â Compounding · every week"}),e.jsx("p",{className:"doc-text",children:r?"à 8h30 UTC le mardi, les moteurs de sourcing lisent le JSON mis à jour. Après 6 mois â environ 26 mutations cumulées â votre deal flow reflète votre pensée stratégique avec une précision quâaucun concurrent ne peut rétro-ingénierier sans votre historique de décisions. Courbe de convergence observée : taux de OUI 20-30% au mois 1, 60-70% au mois 3, 85%+ au mois 6.":"At 8:30 AM UTC Tuesday, the sourcing engines read the updated JSON. After 6 months â approximately 26 cumulative mutations â your deal flow reflects your strategic thinking with a precision no competitor can reverse-engineer without your decision history. Observed convergence curve: YES rate 20-30% at month 1, 60-70% at month 3, 85%+ at month 6."}),e.jsxs("div",{className:"stats-row",children:[e.jsxs("div",{className:"stat",children:[e.jsx("div",{className:"stat-n",children:"52Ã"}),e.jsx("div",{className:"stat-l",children:r?"Capacité de mutations de thèse par an (max théorique â réel ⤠52 quand le Copy-First Safety Protocol revert un cycle fautif)":"Thesis mutations capacity per year (theoretical max â actual ⤠52 when Copy-First Safety Protocol reverts a faulty cycle)"})]}),e.jsxs("div",{className:"stat",children:[e.jsx("div",{className:"stat-n",children:"85%+"}),e.jsx("div",{className:"stat-l",children:r?"Cible du taux de OUI au mois 6 â la métrique que suit lâemail hebdo":"YES rate target at month 6 â the metric the weekly email tracks"})]})]}),e.jsx(ss,{children:r?e.jsxs(e.Fragment,{children:[e.jsx("div",{children:"Email du lundi â résumé des décisions CEO par-angle, diff des mutations appliquées, KPIs par angle (match_rate, yes_rate, tendance), décisions ouvertes avec échéances."}),e.jsxs("div",{children:[e.jsx("code",{children:"fund_thesis.json v(N+1)"})," mis à jour â patché dans la colonne ",e.jsx("code",{children:"fund_thesis"})," de la table Airtable ",e.jsx("code",{children:"fund_type"}),", auto-chargé au prochain run de sourcing."]})]}):e.jsxs(e.Fragment,{children:[e.jsx("div",{children:"Monday email â per-angle CEO decisions summary, mutations diff applied, KPIs per angle (match_rate, yes_rate, trend), open decisions with deadlines."}),e.jsxs("div",{children:["Updated ",e.jsx("code",{children:"fund_thesis.json v(N+1)"})," â patched into the ",e.jsx("code",{children:"fund_thesis"})," column of the ",e.jsx("code",{children:"fund_type"})," Airtable table, auto-loaded by next sourcing run."]})]})})]}),e.jsxs("section",{className:"doc-section",children:[e.jsx("div",{className:"eyebrow",children:r?"Couche email":"Email layer"}),e.jsx("h2",{className:"doc-h2",children:r?"Trois rythmes. Une seule boucle de feedback.":"Three rhythms. One feedback loop."}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["La plupart des emails quotidiens ne requièrent rien de vous â
3225ce sont des rapports de deal flow. Lâ",e.jsx("strong",{children:"email du lundi 16h UTC"})," est le centre de commande hebdo : il liste chaque décision encore ouverte (CONSIDER en attente de résolution de signal, checkpoint 90 jours pour MONITOR selon que la cible a été flaggée trop tôt ou trop tard), les KPIs par-angle (match_rate, yes_rate, tendance hebdo), et le diff complet des mutations de thèse appliquées par le moteur dâévolution."]}):e.jsxs(e.Fragment,{children:["Most daily emails require nothing from you â they are deal flow reports. The ",e.jsx("strong",{children:"Monday 4 PM UTC email"})," is the weekly command center: it lists every decision still open (CONSIDER waiting for signal resolution, 90-day checkpoint for MONITOR whether the target was flagged too early or too late), the per-angle KPIs (match_rate, yes_rate, weekly trend), and the full diff of thesis mutations applied by the Evolution Engine."]})}),e.jsx("span",{id:"email-rhythms",className:"doc-anchor"}),e.jsx("div",{className:"email-cards",children:T5.map(l=>{const d=r?J5(l):l;return e.jsxs("div",{className:"email-card",children:[e.jsx("span",{className:"email-emoji",children:l.emoji}),e.jsxs("div",{children:[e.jsx("div",{className:"email-rhythm",children:d.rhythm}),e.jsx("div",{className:"email-title",children:d.title}),e.jsx("div",{className:"email-desc",children:d.desc})]})]},l.title)})})]}),e.jsxs("section",{className:"doc-section",children:[e.jsx("div",{className:"eyebrow",children:r?"Pourquoi câest important":"Why this matters"}),e.jsx("h2",{className:"doc-h2",children:r?"Pourquoi câest un actif â pas un outil.":"Why this is an asset â not a tool."}),e.jsx("p",{className:"doc-text",children:r?"La plupart des outils IA sont génériques. Ils marchent pareil pour tout le monde. Stan est différent.":"Most AI tools are generic. They work the same for everyone. Stan is different."}),e.jsx("h5",{className:"doc-h5",children:r?"Après 3 mois de décisions OUI et NON":"After 3 months of YES and NO decisions"}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsx("li",{children:"Stan a encodé votre jugement spécifique sur 100+ sociétés."}),e.jsx("li",{children:"Votre thèse a été mutée 50+ fois par vos vraies décisions."}),e.jsx("li",{children:"Vos signaux NON ont réécrit le raisonnement de qualification de chaque angle."}),e.jsxs("li",{children:["Les top picks de Stan reflètent ",e.jsx("strong",{children:"votre pattern de conviction"})," â pas un template."]})]}):e.jsxs(e.Fragment,{children:[e.jsx("li",{children:"Stan has encoded your specific judgment on 100+ companies."}),e.jsx("li",{children:"Your thesis has been mutated 50+ times by your real decisions."}),e.jsx("li",{children:"Your NO signals have rewritten the qualification reasoning for each angle."}),e.jsxs("li",{children:["Stan's top picks reflect ",e.jsx("strong",{children:"your conviction pattern"})," â not a template."]})]})}),e.jsx("h5",{className:"doc-h5",children:r?"Après 12 mois":"After 12 months"}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:["500+ décisions encodées. Des dizaines de signaux ",e.jsx("code",{children:"CEO_VETO"})," traités."]}),e.jsx("li",{children:"Stan pense comme vous sur votre marché spécifique."}),e.jsx("li",{children:"Aucun concurrent ne peut le rétro-ingénierier."}),e.jsx("li",{children:"Aucun analyste ne peut le répliquer à la main."}),e.jsx("li",{children:"Le système vous est entièrement unique."})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:["500+ decisions encoded. Dozens of ",e.jsx("code",{children:"CEO_VETO"})," signals processed."]}),e.jsx("li",{children:"Stan thinks like you on your specific market."}),e.jsx("li",{children:"No competitor can reverse-engineer it."}),e.jsx("li",{children:"No analyst can replicate it manually."}),e.jsx("li",{children:"The system is entirely unique to you."})]})}),e.jsx("h5",{className:"doc-h5",children:r?"Le taux de OUI est la preuve":"The YES rate is the proof"}),e.jsxs("table",{className:"doc-table",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Période":"Period"}),e.jsx("th",{children:r?"Taux de OUI":"YES rate"}),e.jsx("th",{children:r?"Ce que ça veut dire":"What it means"})]})}),e.jsxs("tbody",{children:[e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"Mois 1":"Month 1"})}),e.jsx("td",{children:"20â30%"}),e.jsx("td",{children:r?"Stan apprend votre jugement.":"Stan is learning your judgment."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"Mois 3":"Month 3"})}),e.jsx("td",{children:"60â70%"}),e.jsx("td",{children:r?"Stan reflète votre thèse fidèlement."
3225:"Stan reflects your thesis accurately."})]}),e.jsxs("tr",{children:[e.jsx("td",{children:e.jsx("strong",{children:r?"Mois 6":"Month 6"})}),e.jsx("td",{children:"85%+"}),e.jsx("td",{children:r?"Stan ne présente que des deals que vous validerez.":"Stan presents only deals you will validate."})]})]})]}),e.jsxs("div",{className:"callout success",children:[e.jsx("strong",{children:r?"à 85%+ de taux de OUI, le système a atteint un état quâaucun processus humain ne peut égaler.":"At 85%+ YES rate, the system has reached a state no human process can match."}),e.jsx("p",{children:r?"Chaque top pick est pré-validé. Chaque NON est un échec de qualification â pas un raté de filtre. Le travail du Corporate Developer passe de la clôture des décisions à la gestion des relations.":"Every top pick is pre-validated. Every NO is a qualification failure â not a filter miss. The Corporate Developer's job shifts from closing decisions to managing relationships."}),e.jsx("p",{children:e.jsx("em",{children:r?"Ce nâest pas un outil de reporting. Câest un actif stratégique qui compose. Plus vous lâutilisez, plus il devient irremplaçable.":"This is not a reporting tool. It is a compounding strategic asset. The more you use it, the more irreplaceable it becomes."})})]})]}),e.jsxs("section",{className:"doc-section",children:[e.jsx("span",{id:"glossary",className:"doc-anchor"}),e.jsx("div",{className:"eyebrow",children:r?"Référence":"Reference"}),e.jsx("h1",{className:"doc-h1",children:r?"Glossaire â les 16 termes clés":"Glossary â the 16 key terms"}),e.jsx("p",{className:"doc-lead",children:r?"Proplace emploie un vocabulaire spécifique tout au long de cette documentation, de la page dâaccueil et de lâassistant de thèse. Chaque définition ci-dessous décrit comment le terme se comporte réellement dans le système de production â pas une abstraction. Si un mot vous semble flou plus loin dans la doc, revenez ici : un paragraphe par terme, sans jargon, sans raccourcis.":"Proplace uses a specific vocabulary throughout this documentation, the homepage, and the thesis wizard. Every definition below describes how the term actually behaves in the production system â not an abstraction. If a word ever feels unclear later in the doc, come back here: one paragraph per term, no jargon, no shortcuts."}),e.jsx("span",{id:"g-angle",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:"Angle"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Une thèse dâinvestissement ou dâacquisition indépendante. Chaque angle porte ses propres requêtes de sourcing, calendriers hebdo, narratif de qualification, flags et sociétés de référence. Un seul fonds peut faire tourner ",e.jsx("strong",{children:"1 à 6 angles"})," en parallèle â le système les teste contre chaque deal pour quâun fonds couvre plusieurs mandats dâinvestissement sans mélanger leurs logiques."]}):e.jsxs(e.Fragment,{children:["An independent investment or acquisition thesis. Each angle carries its own sourcing queries, weekly calendars, qualification narrative, flags, and reference companies. A single fund can run ",e.jsx("strong",{children:"1 to 6 angles"})," in parallel â the system tests them against every deal so one fund can cover several investment mandates without mixing their logics."]})}),e.jsx("h3",{className:"doc-h3",children:r?"Entry Filter (v7.5 · gate 2-STEP structuré)":"Entry Filter (v7.5 · structured 2-STEP gate)"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Le tout premier filtre du pipeline. Avant toute qualification poussée, il lit un gate ",e.jsx("strong",{children:"2-STEP structuré"})," (",e.jsx("code",{children:"sourcing_config.shared.single_gate"}),"), une ",e.jsx("strong",{children:"liste de near-miss au niveau du fonds"})," (",e.jsx("code",{children:"sourcing_config.shared.near_miss_examples"}),") et le ",e.jsx("code",{children:"match_signal"})," + ",e.jsx("code",{children:"reject_signal"})," de chaque angle."]}):e.jsxs(e.Fragment,{children:["The very first filter in the pipeline. Before any deep qualification runs, it reads a ",e.jsx("strong",{children:"structured 2-STEP"})," gate (",e.jsx("code",{children:"sourcing_config.shared.single_gate"}),"), a ",e.jsx("strong",{children:"fund-level near-miss list"})," (",e.jsx("code",{children:"sourcing_config.shared.near_miss_examples"}),") and each angle's ",e.jsx("code",{children:"match_signal"})," + ",e.jsx("code",{children:"reject_signal"}),"."]})}),e.jsx("ul",{className:"doc-list",children:r?e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"STEP 1 · gate vertical"})," â question binaire « cette société sert-elle [vertical cible] comme activité PRINCIPALE ? » avec 4â6 rejets explicites de verticaux proches (leisure / consumer / agriculture / ESG général / fintech général / RH généralâ¦). Si STEP 1 échoue â NO MATCH immédiat, STEP 2 est sauté."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"STEP 2 · contrôle dâangle"})," â évalué seulement quand STEP 1 passe. Ãnumère les angles actifs avec un qualifieur vertical par-angle qui bloque le keyword-bleed (ex. « sustainability = carbone/CSRD spécifique au voyage UNIQUEMENT, pas lâagriculture ni lâESG cross-vertical »)."]}),e.jsxs("li",{children:[e.jsx("strong",{children:"near_miss_examples"})," â liste de sociétés taguées MATCH par erreur. Grandit via un bouton « â Flag FP » en 1 clic dans Airtable. Injectée dans le prompt du gate pour que le LLM ne répète jamais deux fois le même faux positif."]})]}):e.jsxs(e.Fragment,{children:[e.jsxs("li",{children:[e.jsx("strong",{children:"STEP 1 · vertical gate"}),' â binary question "does this company serve [target vertical] as its PRIMARY activity?" with 4â6 explicit near-vertical rejections (leisure / consumer / agriculture / general ESG / general fintech / general HRâ¦). If STEP 1 fails â immediate NO MATCH, STEP 2 is skipped.']}),e.jsxs("li",{children:[e.jsx("strong",{children:"STEP 2 · angle check"}),' â evaluated only when STEP 1 passes. Enumerates the active angles with a per-angle vertical qual
3225ifier that blocks keyword-bleed (e.g. "sustainability = travel-specific carbon/CSRD ONLY, not agriculture or cross-vertical ESG").']}),e.jsxs("li",{children:[e.jsx("strong",{children:"near_miss_examples"}),' â list of companies previously tagged MATCH by mistake. Grows via a 1-click "â Flag FP" button in Airtable. Injected into the gate prompt so the LLM never repeats the same false positive twice.']})]})}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Les sociétés qui échouent à lâentry filter sont écartées immédiatement â pas de mémo, pas de scoring. Lâeffet combiné de la structure 2-STEP + injection near-miss élimine ~80% des erreurs de keyword-bleed que lâancien format plat « une question oui/non » laissait passer (ex. ",e.jsx("em",{children:"« Agreena = carbone pour lâagriculture »"})," matché à tort sur le mot « sustainability »)."]}):e.jsxs(e.Fragment,{children:['Companies that fail the entry filter are dropped immediately â no memo, no scoring. The combined effect of the 2-STEP structure + near-miss injection eliminates ~80% of the keyword-bleed errors the flat "one yes/no question" format used to let through (e.g. ',e.jsx("em",{children:'"Agreena = carbon for agriculture"'}),' incorrectly matched on the word "sustainability").']})}),e.jsx("h3",{className:"doc-h3",children:"GP Synthétique"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["La stack de qualification qui écrit un mémo dâinvestissement complet pour chaque société qui passe lâentry filter. Elle teste jusquâà ",e.jsx("strong",{children:"5 angles en parallèle avec un budget de questions égal"}),", fait tourner ",e.jsx("strong",{children:"trois analystes spécialistes"})," (Market & Timing · Moat & Competition · Founder Financial Health & Risk), et produit lâun de quatre verdicts. Conçue pour quâaucun angle ne soit favorisé par défaut â test sans biais."]}):e.jsxs(e.Fragment,{children:["The qualification stack that writes a full investment memo for every company that clears the entry filter. It tests up to ",e.jsx("strong",{children:"5 angles in parallel with an equal question budget"}),", runs ",e.jsx("strong",{children:"three specialist analysts"})," (Market & Timing · Moat & Competition · Founder Financial Health & Risk), and produces one of four verdicts. Designed so no angle is favoured by default â bias-free testing."]})}),e.jsx("span",{id:"g-matrix",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:"Strategic Fit Matrix"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["La structure de décision que le GP Synthétique construit quand il teste 2 angles ou plus sur un deal. Elle triangule trois sources â constats des analystes, synergies identifiées et pertinence initiale â pour choisir lâangle dominant et classer les autres en ",e.jsx("strong",{children:"STRONG"})," / ",e.jsx("strong",{children:"MODERATE"})," / ",e.jsx("strong",{children:"SPECULATIVE"})," / ",e.jsx("strong",{children:" WEAK"})," / ",e.jsx("strong",{children:"NO_FIT"}),". Si un seul angle est testé, aucune matrice nâest construite."]}):e.jsxs(e.Fragment,{children:["The decision structure GP Synthetique builds when it tests 2 or more angles on one deal. It triangulates three sources â analyst findings, identified synergies, and initial relevance â to pick the dominant angle and classify the others as ",e.jsx("strong",{children:"STRONG"})," / ",e.jsx("strong",{children:"MODERATE"})," / ",e.jsx("strong",{children:"SPECULATIVE"})," / ",e.jsx("strong",{children:" WEAK"})," / ",e.jsx("strong",{children:"NO_FIT"}),". If only one angle is tested, no matrix is built."]})}),e.jsx("h3",{className:"doc-h3",children:"Verdict â CALL · CONSIDER · MONITOR · PASS"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Les quatre états autonomes que Stan assigne à chaque deal. ",e.jsx("strong",{children:"CALL"})," = forte conviction, Stan fait remonter le deal pour un OUI ou NON. ",e.jsx("strong",{children:"CONSIDER"})," = doute ou données manquantes. ",e.jsx("strong",{children:" MONITOR"})," = trop tôt, ou trop tard (la société est déjà trop grosse mais vous en voulez une comme elle). ",e.jsx("strong",{children:"PASS"})," = rejeté sur anti-pattern ou block structurel. ",e.jsx("em",{children:"Vous ne dites OUI ou NON que sur les CALL â Stan gère CONSIDER / MONITOR / PASS de façon autonome."})]}):e.jsxs(e.Fragment,{children:["The four autonomous states Stan assigns to every deal. ",e.jsx("strong",{children:"CALL"})," = high conviction, Stan surfaces the deal for a YES or NO. ",e.jsx("strong",{children:"CONSIDER"})," = doubt or missing data. ",e.jsx("strong",{children:" MONITOR"})," = too early, or too late (the company is already too big but you want another like it). ",e.jsx("strong",{children:"PASS"})," = rejected on anti-pattern or structural block. ",e.jsx("em",{children:"You only say YES or NO on CALLs â Stan handles CONSIDER / MONITOR / PASS autonomously."})]})}),e.jsx("h3",{className:"doc-h3",children:r?"OUI / NON":"YES / NO"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Votre seule et unique interaction de décision avec le système. Vous dites OUI à un CALL si vous êtes dâaccord avec le top pick de Stan, NON sinon. Une note dâune ligne sur votre NON est optionnelle mais double la vitesse de convergence : elle encode un ",e.jsx("code",{children:" TOXIC_KEYWORD"})," dans votre thèse le lundi suivant, réécrivant le raisonnement de qualification de lâangle concerné."]}):e.jsxs(e.Fragment,{children:["Your one and only decision interaction with the system. You say YES to a CALL if you agree with Stan's top pick, NO if you don't. A one-line note on your NO is optional but doubles convergence speed: it encodes a ",e.jsx("code",{children:" TOXIC_KEYWORD"})," into your thesis the following Monday, rewriting the relevant angle's qualification reasoning."]})}),e.jsx("span",{id:"g-ncl",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:"Neural Command Line (NCL)"}),e.jsx("p",{className:"doc-text",children:r?"La ligne lisible par machine que Stan écrit à la fin de chaque mémo. Elle encode le verdict, lâangle dominant et un mot-clé extrait. La NCL est ce que le Weekly Evolution Engine lit chaque lundi â rien dâautre. Si un deal ne produit pas de NCL, il ne peut pas muter la thèse.":"The machine-readable line Stan writes at the end of every memo. It encodes the verdict, the dominant angle, and one extracted keyword. The NCL is what the Weekly Evolution Engine reads every Monday â nothing else. If a deal doesn't produce an NCL, it cannot mutate the thesis."}),e.jsx("h3",{className:"doc-h3",children:"Weekly Evolution Engine"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Le processus qui tourne chaque lundi à ",e.jsx("strong",{children:"16h UTC"}),". Il lit chaque NCL de la semaine, applique des règles de mutation strictes par-signal, valide le JSON résultant contre le schéma fund_thesis v5.4, puis le réécrit dans Airtable. Si la validation échoue, la ver
3225sion précédente reste en place â il est mathématiquement impossible quâune thèse cassée atteigne la production."]}):e.jsxs(e.Fragment,{children:["The process that runs every Monday at ",e.jsx("strong",{children:"4 PM UTC"}),". It reads every NCL of the week, applies strict per-signal mutation rules, validates the resulting JSON against the fund_thesis v5.4 schema, then writes it back to Airtable. If validation fails, the previous version stays live â it is mathematically impossible for a broken thesis to reach production."]})}),e.jsx("h3",{className:"doc-h3",children:"Hurdle"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Un seuil financier â IRR, MOIC ou ROI â fixé en section 9 de lâassistant, un jeu par mode dâinvestissement. Le modèle financier compare vos hurdles aux returns simulés du base-case pour ",e.jsx("strong",{children:"stress-tester"})," le verdict qualitatif. Les hurdles peuvent rétrograder un CALL qualitatif en CONSIDER mais ne remontent jamais un PASS."]}):e.jsxs(e.Fragment,{children:["A financial threshold â IRR, MOIC, or ROI â set in section 9 of the wizard, one set per investment mode. The financial model compares your hurdles to the simulated base-case returns to ",e.jsx("strong",{children:"stress-test"})," the qualitative verdict. Hurdles can downgrade a qualitative CALL to CONSIDER but never upgrade a PASS."]})}),e.jsx("span",{id:"g-flags",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:"Priority / Green / Red flag"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Les trois listes de patterns que vous saisissez dans la section Qualification, un jeu par angle. Les ",e.jsx("strong",{children:"priority flags"})," (4 à 7) sont la colonne vertébrale du scoring â courts mots-clés que Stan cherche dans chaque société qualifiée. Les ",e.jsx("strong",{children:" green flags"})," (8 initialement, jusquâà 15 après mutations) sont des signaux positifs vivants. Les ",e.jsx("strong",{children:" red flags"})," (4 initialement, jusquâà 8) sont des anti-patterns. Le moteur hebdo promeut automatiquement en priority tout green flag déclenché 3+ fois."]}):e.jsxs(e.Fragment,{children:["The three pattern lists you enter in the Qualification section, one set per angle. ",e.jsx("strong",{children:"Priority flags"})," (4 to 7) are the backbone of scoring â short keywords Stan looks for in every qualified company. ",e.jsx("strong",{children:" Green flags"})," (8 initially, up to 15 after mutations) are living positive signals. ",e.jsx("strong",{children:" Red flags"})," (4 initially, up to 8) are anti-patterns. The weekly engine promotes any green flag that fires 3+ times to priority automatically."]})}),e.jsx("h3",{className:"doc-h3",children:"Gold / Poison anchor"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Sociétés de référence par angle. Le ",e.jsx("strong",{children:"gold anchor"})," est un exemple parfait de votre thèse â unique sur tous les angles, utilisé comme benchmark positif dans chaque mémo. Le ",e.jsx("strong",{children:"poison anchor"})," est un contre-exemple structurel â une société qui ressemble à votre gold anchor en surface mais qui est en fait toxique. Stan utilise les deux comme étalons visuels."]}):e.jsxs(e.Fragment,{children:["Reference companies per angle. The ",e.jsx("strong",{children:"gold anchor"})," is a perfect example of your thesis â unique across all angles, used as a positive benchmark in every memo. The ",e.jsx("strong",{children:"poison anchor"})," is a structural counter-example â a company that looks like your gold anchor on the surface but is in fact toxic. Stan uses both as visual yardsticks."]})}),e.jsx("h3",{className:"doc-h3",children:"Exa (Semantic / Similar)"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Un moteur de recherche neural qui comprend des descriptions sémantiques plutôt que des mots-clés. ",e.jsx("strong",{children:"Exa Semantic"})," alimente les sept phrases « Here is a » par angle. ",e.jsx("strong",{children:"Exa Similar"})," alimente les 10 competitor anchors, faisant remonter des sociétés sosies que Stan ne trouverait jamais avec une recherche par mots-clés pure."]}):e.jsxs(e.Fragment,{children:["A neural search engine that understands semantic descriptions rather than keywords. ",e.jsx("strong",{children:"Exa Semantic"}),' powers the seven "Here is a" phrases per angle. ',e.jsx("strong",{children:"Exa Similar"})," powers the 10 competitor anchors, surfacing lookalike companies Stan would never find with pure keyword search."]})}),e.jsx("h3",{className:"doc-h3",children:"Pappers FR"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Le registre des entreprises françaises. Une startup française est typiquement déposée dans Pappers ",e.jsx("strong",{children:"2 à 6 mois avant dâavoir un site web visible"})," â ce qui en fait un signal précieux de sourcing précoce pour les angles à périmètre français. Pappers est France-only ; la couverture internationale vient dâExa."]}):e.jsxs(e.Fragment,{children:["The French corporate registry. A French startup is typically filed in Pappers ",e.jsx("strong",{children:"2 to 6 months before it has a visible website"})," â which makes it a precious early-sourcing signal for French-scope angles. Pappers is France-only; international coverage comes from Exa."]})}),e.jsx("span",{id:"g-override",className:"doc-anchor"}),e.jsx("h3",{className:"doc-h3",children:"OVERRIDE"}),e.jsx("p",{className:"doc-text",children:r?"La situation où Stan avait rejeté une société (PASS, ou jamais sourcée du tout) mais vous décidez de la pousser en CALL quand même. OVERRIDE est lâun des plus forts signaux que le moteur dâévolution consomme : il contourne la règle standard des 2 cycles et mute le sourcing, les flags et le gold anchor pool de lâangle dès le run du lundi suivant.":"The situation where Stan had rejected a company (PASS, or never sourced at all) but you decide to push it to CALL anyway. OVERRIDE is one of the strongest signals the evolution engine consumes: it bypasses the standard 2-cycle rule and mutates the angle's sourcing, flags, and gold anchor pool in the very next Monday run."}),e.jsx("h3",{className:"doc-h3",children:r?"Profil sectoriel":"Sector profile"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["La bibliothèque de benchmarks sur laquelle le modèle financier retombe quand les données réelles manquent. Quatre profils sont actuellement disponibles : ",e.jsx("code",{children:"b2b_travel_saas"}),", ",e.jsx("code",{children:"ai_native_saas"}
3225),", ",e.jsx("code",{children:"fintech_payment_rails"}),", ",e.jsx("code",{children:" marketplace_b2b"}),". Le profil est choisi une fois en section 9 et reste figé."]}):e.jsxs(e.Fragment,{children:["The benchmark library the financial model falls back on when real data is missing. Four profiles are currently available: ",e.jsx("code",{children:"b2b_travel_saas"}),", ",e.jsx("code",{children:"ai_native_saas"}),", ",e.jsx("code",{children:"fintech_payment_rails"}),", ",e.jsx("code",{children:" marketplace_b2b"}),". The profile is chosen once in section 9 and stays frozen."]})}),e.jsx("h3",{className:"doc-h3",children:r?"Rotation de pool vs rotation calendaire":"Pool rotation vs calendar rotation"}),e.jsx("p",{className:"doc-text",children:r?e.jsxs(e.Fragment,{children:["Deux mécaniques dâactivation différentes pour les moteurs de sourcing. Les ",e.jsx("strong",{children:"moteurs de pool"})," (Exa Semantic, LinkedIn Posts) tirent 2 requêtes par jour dâun pool partagé, pondéré par angle â donc un angle weight-5 reçoit environ 5à plus de requêtes par semaine quâun angle weight-1. Les ",e.jsx("strong",{children:"moteurs calendaires"})," (LinkedIn Jobs, Crunchbase) activent un angle pendant des semaines ISO spécifiques, proportionnellement à son poids â pendant les semaines inactives, le calendrier ne tourne simplement pas pour cet angle."]}):e.jsxs(e.Fragment,{children:["Two different activation mechanics for sourcing engines. ",e.jsx("strong",{children:"Pool engines"})," (Exa Semantic, LinkedIn Posts) draw 2 queries per day from a shared pool, weighted by angle â so a weight-5 angle gets roughly 5à more queries per week than a weight-1 angle. ",e.jsx("strong",{children:"Calendar engines"})," (LinkedIn Jobs, Crunchbase) activate an angle during specific ISO weeks, proportional to its weight â during inactive weeks the calendar simply doesn't run for that angle."]})}),e.jsxs("div",{className:"callout info",children:[e.jsx("strong",{children:r?"Pourquoi ce glossaire existe.":"Why this glossary exists."}),e.jsx("p",{children:r?e.jsxs(e.Fragment,{children:["Chaque terme ci-dessus réapparaît tout au long de cette documentation. Si une phrase plus loin utilise « OVERRIDE » ou « Strategic Fit Matrix » et que vous avez besoin du sens exact, ceci est la source unique de vérité. Lâassistant de thèse sur ",e.jsx("code",{children:" analysis.proplace.co/thesis/"})," sâouvre sur le même glossaire, en français, pour le CEO."]}):e.jsxs(e.Fragment,{children:['Every term above reappears throughout this documentation. If a sentence later uses "OVERRIDE" or "Strategic Fit Matrix" and you need the exact meaning, this is the single source of truth. The thesis wizard on ',e.jsx("code",{children:" analysis.proplace.co/thesis/"})," opens with the same glossary, in French, for the CEO."]})})]})]}),e.jsxs("footer",{className:"doc-footer",children:[e.jsx("div",{children:"Proplace · fund_thesis v5.4 · Documentation"}),e.jsxs("div",{children:[r?"Dernière revue":"Last reviewed",": 2026-04-19 · ",e.jsx("a",{href:"/api/",target:"_blank",rel:"noopener",children:"API â"})," · ",e.jsx("a",{href:n("/"),children:r?"Retour à lâaccueil":"Back to homepage"})]})]})]})]})]})}function is({step:t}){const{lang:n}=ae(),r=n==="fr"?u1(t):t;return e.jsxs("section",{className:"doc-step-header",children:[e.jsx("span",{id:`step-${t.id}`,className:"doc-anchor"}),e.jsx("div",{className:"step-num",children:t.id}),e.jsxs("div",{children:[e.jsxs("div",{className:"step-eyebrow",children:[r.label," · ",r.cadence]}),e.jsx("h2",{className:"step-title",children:r.title}),e.jsx("p",{className:"step-tagline",children:r.tagline}),e.jsxs("div",{className:"step-time",children:[e.jsx("span",{className:"step-dot"}),n==="fr"?"Votre temps":"Your time",": ",r.yourTime]})]})]})}function ss({children:t}){const{lang:n}=ae();return e.jsxs("div",{className:"receive",children:[e.jsx("div",{className:"receive-label",children:n==="fr"?"Ce qui passe en prod":"What goes live"}),e.jsx("div",{className:"receive-body",children:t})]})}const rj=` 3226.doc-root { display: flex; min-height: 100vh; background: var(--white); color: var(--ink); font-family: var(--pp-body); font-size: 15px; line-height: 1.65; } 3227 3228/* SIDEBAR */ 3229.doc-sidebar { width: 280px; min-width: 280px; background: var(--bg); border-right: 1px solid var(--line); padding: 24px 0 40px; position: sticky; top: 0; height: 100vh; overflow-y: auto; overflow-x: hidden; } 3230.doc-logo { display: block; padding: 0 22px 20px; border-bottom: 1px solid var(--line); margin-bottom: 18px; text-decoration: none; } 3231.doc-logo-name { display: block; font-size: 18px; font-weight: 900; color: var(--ink); letter-spacing: -.02em; } 3232.doc-logo-sub { display: block; font-size:12px; font-weight:600; color: var(--lite); margin-top: 4px; } 3233.doc-nav { display: flex; flex-direction: column; gap: 18px; padding: 0 14px; } 3234.doc-nav-section { display: flex; flex-direction: column; gap: 6px; } 3235.doc-nav-eyebrow { font-size:12px; font-weight:600; color: var(--green); padding: 0 8px; margin-bottom: 4px; } 3236.doc-nav-group { display: flex; flex-direction: column; } 3237.doc-nav-group-label { display: block; font-size: 12px; font-weight: 700; color: var(--ink); padding: 4px 8px; text-decoration: none; cursor: pointer; border-left: 2px solid transparent; transition: all .12s; } 3238.doc-nav-group-label:hover { color: var(--green); } 3239.doc-nav-group-label.active { color: var(--green); border-left-color: var(--green); background: var(--gp); } 3240.doc-nav-item { display: block; padding: 5px 10px 5px 18px; font-size: 12.5px; color: var(--mid); text-decoration: none; border-left: 2px solid transparent; transition: all .12s; word-wrap: break-word; overflow-wrap: break-word; line-height: 1.4; } 3241.doc-nav-item:hover { color: var(--ink); border-left-color: var(--line); } 3242.doc-nav-item.active { color: var(--green); border-left-color: var(--green); font-weight: 600; background: var(--gp); } 3243 3244/* CONTENT */ 3245.doc-content { flex: 1; max-width: 880px; margin: 0 auto; padding: 56px 64px 80px; } 3246.doc-section { padding-bottom: 28px; } 3247.doc-anchor { display: block; height: 0; scroll-margin-top: 24px; } 3248.doc-h1 { font-size: clamp(30px, 4.5vw, 38px); font-weight: 900; letter-spacing: -.03em; line-height: 1.1; color: var(--ink); margin-bottom: 14px; } 3249.doc-h2 { font-size: 24px; font-weight: 800; letter-spacing: -.02em; color: var(--ink); margin: 36px 0 12px; padding-top: 24px; border-top: 1px solid var(--line); } 3250.doc-h2:first-child { border-top: none; padding-top: 0; margin-top: 0; } 3251.doc-h3 { font-size: 18px; font-weight: 800; letter-spacing: -.01em; color: var(--ink); margin: 28px 0 10px; display: flex; align-items: center; gap: 10px; flex-wrap: wrap; } 3252.doc-h4 { font-size: 14px; font-weight: 700; color: var(--ink); margin: 22px 0 8px; } 3253.doc-h5 { font-size: 13px; font-weight:600; color: var(--ink); margin: 18px 0 6px; } 3254.verdict-pill { display: inline-block; padding: 3px 9px; border-radius: 999px; font-size: 11px; font-weight: 700; border: 1px solid; white-space: nowrap; } 3255.verdict-pill.v-call { color: var(--green-dk); background: var(--gp); border-color: #b7e3c9; }
3256.verdict-pill.v-consider { color: #92680a; background: #fff8e6; border-color: #f0d89a; } 3257.verdict-pill.v-monitor { color: #1e5a8c; background: #e8f2fb; border-color: #b5d4ef; } 3258.verdict-pill.v-pass { color: var(--red); background: var(--rp); border-color: #f0c2bd; } 3259.doc-tag { font-size:12px; font-weight:600; color: var(--mid); background: var(--bg); border: 1px solid var(--line); padding: 2px 7px; } 3260.doc-lead { font-size: 17px; color: var(--sub); line-height: 1.7; margin-bottom: 14px; max-width: 640px; } 3261.doc-text { font-size: 15px; color: var(--sub); line-height: 1.7; margin-bottom: 14px; } 3262.doc-text strong { font-weight: 700; color: var(--ink); } 3263.doc-text a { color: var(--green); text-decoration: none; border-bottom: 1px solid currentColor; } 3264.doc-text a:hover { color: var(--green-dk); } 3265.doc-italic { font-style: italic; color: var(--mid); } 3266.doc-list { padding-left: 18px; margin: 0 0 14px; } 3267.doc-list li { font-size: 14px; color: var(--sub); line-height: 1.6; margin-bottom: 4px; } 3268code { background: var(--bg); border: 1px solid var(--line); padding: 1px 6px; font-family: var(--pp-mono); font-size: 12.5px; color: var(--ink);font-variant-numeric:tabular-nums} 3269.doc-code { display: block; background: var(--bg); border: 1px solid var(--line); padding: 14px 16px; font-family: var(--pp-mono); font-size: 12.5px; line-height: 1.6; color: var(--ink); overflow-x: auto; margin: 14px 0; white-space: pre;font-variant-numeric:tabular-nums} 3270 3271/* TABLES */ 3272.doc-table { width: 100%; border-collapse: collapse; margin: 14px 0 22px; font-size: 13.5px; border: 1px solid var(--line); } 3273.doc-scroll { overflow-x: auto; margin: 14px 0 22px; border: 1px solid var(--line); } 3274.doc-scroll > .doc-table { margin: 0; border: none; min-width: 900px; } 3275.doc-table-wide { min-width: 900px; } 3276.doc-table thead th { background: var(--bg); text-align: left; padding: 10px 13px; font-size:12px; font-weight:600; color: var(--mid); border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); } 3277.doc-table thead th:last-child { border-right: none; } 3278.doc-table tbody td { padding: 10px 13px; border-bottom: 1px solid var(--line); border-right: 1px solid var(--line); color: var(--sub); vertical-align: top; line-height: 1.55; } 3279.doc-table tbody tr:last-child td { border-bottom: none; } 3280.doc-table tbody td:last-child { border-right: none; } 3281.doc-table tbody td strong { color: var(--ink); font-weight: 700; } 3282 3283/* CALLOUTS â 4 variants, aligned with homepage tokens */ 3284.callout { border: 1px solid; border-left-width: 3px; padding: 12px 16px; margin: 14px 0; font-size: 14px; line-height: 1.6; } 3285.callout strong { font-weight: 700; display: block; margin-bottom: 4px; } 3286.callout p { margin: 0; color: var(--sub); } 3287.callout.info { background: #F3F8FE; border-color: #C9DEF6; color: #1F3F70; } 3288.callout.info strong { color: #1F3F70; } 3289.callout.success { background: var(--gp); border-color: var(--green); color: var(--green-dk); } 3290.callout.success strong { color: var(--green-dk); } 3291.callout.warning { background: #FFFAEB; border-color: #F0D89A; color: #92680A; } 3292.callout.warning strong { color: #92680A; } 3293.callout.error { background: var(--rp); border-color: var(--red); color: var(--red); } 3294.callout.error strong { color: var(--red); } 3295 3296/* CARDS */ 3297.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 12px 0 18px; } 3298.card { background: var(--white); border: 1px solid var(--line); border-top: 2px solid var(--green); padding: 14px 16px; } 3299.card-h { font-size: 14px; font-weight: 700; color: var(--ink); margin-bottom: 6px; } 3300.card-p { font-size: 13px; color: var(--sub); line-height: 1.6; } 3301.card-meta { font-size: 11px; color: var(--mid); margin-top: 8px; padding-top: 8px; border-top: 1px solid var(--line); } 3302.card-meta strong { color: var(--ink); font-weight: 700; } 3303 3304/* ENGINES */ 3305.engine-list { display: flex; flex-direction: column; gap: 6px; margin: 12px 0 18px; } 3306.engine { display: flex; gap: 12px; padding: 10px 14px; background: var(--bg); border: 1px solid var(--line); border-left: 3px solid var(--green); align-items: flex-start; } 3307.engine-emoji { font-size: 16px; flex-shrink: 0; line-height: 1.2; padding-top: 2px; } 3308.engine-name { font-size: 13.5px; font-weight: 700; color: var(--ink); margin-bottom: 2px; } 3309.engine-detail { font-size: 12.5px; color: var(--sub); line-height: 1.55; } 3310 3311/* MEMO GRID */ 3312.memo-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 12px 0 18px; } 3313.memo-col { background: var(--white); border: 1px solid var(--line); padding: 12px 14px; } 3314.memo-h { font-size:12px; font-weight:600; color: var(--green); margin-bottom: 8px; } 3315
3316/* VERDICTS */ 3317.verdicts-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 12px 0 18px; } 3318.verdict { padding: 12px 14px; border: 1px solid; border-left-width: 3px; } 3319.verdict-h { font-size: 13px; font-weight: 800; margin-bottom: 4px; letter-spacing: .04em; } 3320.verdict-p { font-size: 13px; color: var(--sub); line-height: 1.55; } 3321.v-call { background: #E7F6EE; border-color: #12A150; } 3322.v-call .verdict-h { color: #12A150; } 3323.v-consider { background: #FFFBEB; border-color: #96690E; } 3324.v-consider .verdict-h { color: #96690E; } 3325.v-monitor { background: #EFF6FF; border-color: #2563eb; } 3326.v-monitor .verdict-h { color: #2563eb; } 3327.v-pass { background: var(--rp); border-color: var(--red); } 3328.v-pass .verdict-h { color: var(--red); } 3329 3330/* PHASES */ 3331.phases { position: relative; display: flex; flex-direction: column; gap: 20px; margin: 18px 0 22px; padding-left: 28px; } 3332.phases::before { content: ''; position: absolute; left: 7px; top: 8px; bottom: 8px; width: 2px; background: var(--green); opacity: .5; border-radius: 2px; } 3333.phase { position: relative; background: var(--white); padding: 4px 0; } 3334.phase::before { content: ''; position: absolute; left: -28px; top: 6px; width: 14px; height: 14px; border-radius: 50%; background: var(--white); border: 2px solid var(--green); box-sizing: border-box; } 3335.phase-h { display: flex; align-items: center; gap: 10px; margin-bottom: 10px; } 3336.phase-icon { font-size: 15px; } 3337.phase-name { flex: 1; font-size: 12.5px; font-weight:600; color: var(--ink); } 3338.phase-badge { font-size:12px; font-weight:600; padding: 2px 10px; border-radius: 999px; border: 1px solid; white-space: nowrap; } 3339.phase-badge.required { color: #92680a; background: #FFFAEB; border-color: #F0D89A; } 3340.phase-badge.ongoing { color: var(--green-dk); background: var(--gp); border-color: #b7e3c9; } 3341.phase-tasks { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 6px; } 3342.phase-tasks li { font-size: 13px; color: var(--sub); display: flex; align-items: center; gap: 9px; } 3343.task-check { width: 14px; height: 14px; border: 1.5px solid var(--line); border-radius: 3px; background: var(--white); flex-shrink: 0; } 3344.task-text { flex: 1; } 3345.task-req { font-size:12px; font-weight:600; padding: 1px 9px; border-radius: 999px; border: 1px solid; flex-shrink: 0; white-space: nowrap; } 3346.task-req.req { color: #92680a; background: #FFFAEB; border-color: #F0D89A; } 3347.task-req.opt { color: var(--mid); background: var(--bg); border-color: var(--line); font-weight: 600; } 3348 3349/* STEP HEADER */ 3350.doc-step-header { display: flex; gap: 18px; align-items: flex-start; padding: 36px 0 22px; border-top: 2px solid var(--green); margin-top: 32px; } 3351.step-num { font-size: 48px; font-weight: 900; color: var(--green); letter-spacing: -.04em; line-height: 1; flex-shrink: 0; } 3352.step-eyebrow { font-size:12px; font-weight:600; color: var(--green); margin-bottom: 4px; } 3353.step-title { font-size: 24px; font-weight: 800; letter-spacing: -.02em; color: var(--ink); margin: 0 0 6px; line-height: 1.2; } 3354.step-tagline { font-size: 14px; font-style: italic; color: var(--mid); line-height: 1.55; margin-bottom: 10px; } 3355.step-time { display: inline-flex; align-items: center; gap: 7px; background: var(--bg); border: 1px solid var(--line); padding: 5px 12px; font-size: 12px; font-weight: 500; color: var(--sub); border-radius: 20px; } 3356.step-dot { width: 6px; height: 6px; border-radius: 50%; background: var(--green); } 3357 3358/* RECEIVE */ 3359.receive { background: var(--gp); border: 1px solid var(--green); border-left: 3px solid var(--green); padding: 14px 18px; margin: 18px 0; } 3360.receive-label { font-size:12px; font-weight:600; color: var(--green); margin-bottom: 8px; } 3361.receive-body { font-size: 14px; color: var(--sub); line-height: 1.6; } 3362.receive-body > div { margin-bottom: 6px; padding-left: 18px; position: relative; } 3363.receive-body > div::before { content: 'â'; color: var(--green); font-weight: 700; position: absolute; left: 0; } 3364.receive-body > div:last-child { margin-bottom: 0; } 3365 3366/* STATS */ 3367.stats-row { display: flex; gap: 24px; flex-wrap: wrap; margin: 14px 0 18px; } 3368.stat { display: flex; flex-direction: column; } 3369.stat-n { font-size: 32px; font-weight: 900; color: var(--green); letter-spacing: -.04em; line-height: 1; } 3370.stat-l { font-size: 13px; color: var(--sub); line-height: 1.4; margin-top: 4px; max-width: 200px; } 3371 3372/* EMAIL CARDS */ 3373.email-cards { display: flex; flex-direction: column; gap: 10px; margin: 14px 0; } 3374.email-card { display: flex; gap: 16px; background: var(--white); border: 1px solid var(--line); padding: 16px 18px; align-items: flex-start; } 3375.email-emoji { width: 36px; height: 36px; border-radius: 50%; background: var(--gp); border: 1.5px solid var(--green); display: flex; align-items: center; justify-content: center; font-size: 14px; flex-shrink: 0; } 3376.email-rhythm { font-size:12px; font-weight:600; color: var(--green); margin-bottom: 4px; } 3377.email-title { font-size: 16px; font-weight: 800; color: var(--ink); letter-spacing: -.01em; margin-bottom: 6px; } 3378.email-desc { font-size: 13.5px; color: var(--sub); line-height: 1.6; } 3379 3380/* FOOTER */ 3381.doc-footer { margin-top: 60px; padding: 20px 0; border-top: 1px solid var(--line); display: flex; justify-content: space-between; font-size: 12px; color: var(--lite); } 3382.doc-footer a { color: var(--green); text-decoration: none; } 3383 3384/* MOBILE TOGGLE */ 3385.doc-mobile-toggle { display: none; position: fixed; top: 8px; right: 12px; z-index: 100; background: var(--ink); color: var(--white); border: none; padding: 5px 11px; font-size:12px; font-weight:600; cursor: pointer; font-family: var(--pp-body); line-height: 1.4; } 3386 3387/* RESPONSIVE */ 3388@media (max-width: 1024px) { 3389 .doc-sidebar { position: fixed; left: 0; top: 0; width: 280px; transform: translateX(-100%); transition: transform .2s; z-index: 99; box-shadow: 0 0 40px rgba(0,0,0,0.15); height: 100vh !important; } 3390 .doc-sidebar.open { transform: translateX(0); } 3391 .doc-content { padding: 56px 24px 60px; max-width: 100%; margin-left: 0 !important; } 3392 .doc-mobile-toggle { display: block; } 3393 .grid-2, .memo-grid, .verdicts-grid { grid-template-columns: 1fr; } 3394 .doc-step-header { flex-direction: column; gap: 8px; } 3395 .step-num { font-size: 36px; } 3396} 3397 3398@media (max-width: 600px) { 3399 .doc-content { padding: 56px 18px 60px; font-size: 14px; } 3400 .doc-h1 { font-size: 26px; } 3401 .doc-h2 { font-size: 20px; } 3402 .doc-h3 { font-size: 16px; } 3403 .doc-table { font-size: 12px; } 3404 .doc-table thead th, .doc-table tbody td { padding: 8px 10px; } 3405 .stats-row { gap: 14px; } 3406 .stat-n { font-size: 26px; } 3407} 3408`,rc="https://analysis.proplace.co/thesis/?fund=demo",ij={en:{redirecting:"Redirecting to the wizard in demo modeâ¦",fallback:"If you are not redirected automatically, click here:"},fr:{redirecting:"Redirection vers le wizard en mode démoâ¦",fallback:"Si la redirection ne se fait pas automatiquement, cliquez ici :"}};function sj(){const{lang:t}=ae(),n=ij[t];return m.useEffect(()=>{window.location.replace(rc)},[]),e.jsxs("div",{style:{padding:40,fontFamily:"'Inter', -apple-system, sans-serif",color:"#444",maxWidth:640,margin:"40px auto"},children:[e.jsx("p",{style:{fontSize:14,lineHeight:1.6},children:n.redirecting}),e.jsxs("p",{style:{fontSize:13,color:"#777",marginTop:16},children:[n.fallback," ",e.jsx("a",{href:rc,children:rc})]})]})}const ic={en:{seo:{title:"Terms of Service â Proplace",description:"The terms governing access to and use of Proplace and its AI-powered sourcing, analyses, and decision-support tools."},backHome:"â Back to home",pageTitle:"Terms of Service",lastUpdated:"Last updated: August 2026",sections:[{title:"1. Acceptance of these Terms",body:e.jsxs(e.Fragment,{children:[e.jsxs(Z,{children:["These Terms of Service (the ",e.jsx(de,{children:'"Terms"'}
3408),") govern access to and use of the website, platform, software, APIs, dashboards, AI outputs, reports, memos, and related services (collectively, the"," ",e.jsx(de,{children:'"Service"'}),") made available by the operator of this website (the ",e.jsx(de,{children:'"Operator"'}),", ",e.jsx(de,{children:'"we"'}),", ",e.jsx(de,{children:'"us"'}),", or ",e.jsx(de,{children:'"our"'}),"). By accessing, browsing, registering for, or using the Service, the user (",e.jsx(de,{children:'"you"'}),", ",e.jsx(de,{children:'"User"'}),", or ",e.jsx(de,{children:'"Client"'}),") accepts these Terms in full. If you do not agree, do not use the Service."]}),e.jsxs(Z,{children:["Where a separate written master services agreement, order form, or subscription contract (a ",e.jsx(de,{children:'"Master Agreement"'}),") has been signed between the parties, the Master Agreement controls in case of conflict with these Terms; otherwise, these Terms apply in full."]})]})},{title:"2. Nature of the Service â Informational Only",body:e.jsxs(e.Fragment,{children:[e.jsxs(Z,{children:["The Service provides software tools, dashboards, and AI-generated analyses (including but not limited to memos, scoring, market summaries, financial syntheses, and qualitative assessments) that are intended solely as"," ",e.jsx(de,{children:"informational and decision-support tools"}),"."]}),e.jsxs(Z,{children:["The Service ",e.jsx(de,{children:"does not constitute"}),", and must not be relied upon as: (a) investment advice, financial advice, tax advice, legal advice, accounting advice, or solicitation to buy or sell any security or financial instrument; (b) a recommendation to enter, decline, or exit any transaction; (c) professional due diligence; (d) a fairness opinion; (e) a regulated financial service within the meaning of any applicable securities or financial services legislation."]}),e.jsx(Z,{children:"The User is solely responsible for all investment, transactional, and operational decisions, and must conduct its own independent verification, due diligence, and consultation with qualified professionals before acting on any output of the Service."})]})},{title:"3. AI Outputs â No Guarantees of Accuracy",body:e.jsxs(e.Fragment,{children:[e.jsxs(Z,{children:["Outputs produced by the Service are generated by statistical models, large language models, third-party data providers, and automated pipelines. They may contain errors, omissions, inaccuracies, hallucinations, outdated information, misattributed statements, or fabricated content. The Operator makes"," ",e.jsx(de,{children:"no representation or warranty"}),", express or implied, as to the accuracy, completeness, timeliness, suitability, legality, non-infringement, or fitness for any particular purpose of any output."]}),e.jsxs(Z,{children:["All outputs are provided on an ",e.jsx(de,{children:'"as is"'})," and"," ",e.jsx(de,{children:'"as available"'})," basis. The User acknowledges that it has been fully informed of the probabilistic nature of AI-generated content and assumes all risks arising from its use."]})]})},{title:"4. Acceptable Use",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:"The User agrees not to:"}),e.jsxs(rm,{children:[e.jsx(zt,{children:"use the Service in violation of any applicable law, regulation, sanction, or third-party right;"}),e.jsx(zt,{children:"upload, transmit, or process data that infringes intellectual property rights, violates privacy or data protection laws, or constitutes unlawful content;"}),e.jsx(zt,{children:"reverse engineer, decompile, scrape, mirror, or attempt to extract the underlying models, prompts, or training data of the Service;"}),e.jsx(zt,{children:"resell, sublicense, or redistribute the Service or its outputs to third parties except as expressly permitted;"}),e.jsx(zt,{children:"circumvent authentication, rate limits, security controls, or tenant isolation mechanisms;"}),e.jsx(zt,{children:"use the Service to build a competing product, benchmark for publication, or train a competing model."})]})]})},{title:"5. User Data & Inputs",body:e.jsxs(e.Fragment,{children:[e.jsxs(Z,{children:["The User retains ownership of the data, documents, and parameters it submits to the Service (",e.jsx(de,{children:'"User Data"'}),"). The User grants the Operator a worldwide, royalty-free, non-exclusive licence to host, copy, transmit, display, process, and sub-process User Data solely to the extent necessary to operate, maintain, improve, and secure the Service."]}),e.jsx(Z,{children:"The User represents and warrants that (i) it has all rights required to submit the User Data, (ii) the User Data does not infringe any third-party right, (iii) it will not submit personal, confidential, or regulated data except as permitted by applicable law and any Master Agreement, and (iv) it will comply with all applicable obligations regarding KYC, AML, market abuse, insider dealing, and professional secrecy in its use of the Service and its outputs."}),e.jsxs(Z,{children:["User Data is ",e.jsx(de,{children:"not"})," used to train foundation models of our providers. We may use aggregated, anonymised, non-identifiable telemetry to monitor and improve the Service."]}),e.jsxs(Z,{children:[e.jsx(de,{children:"Public market editorial vs. fund data (validated 11 Aug 2026)."})," ","Two streams must not be confused. (i) ",e.jsx(de,{children:"Fund Data"})," â theses, target lists, scores, match notes, and any information that identifies a Client fund or its pipeline â remains confined to that Client's authenticated context and is never published on social networks or on public pages of the Service. (ii)"," ",e.jsx(de,{children:"Public Market Editorial"}),` â news of M&A, fundraises, hirings and appointments drawn from public sources (press, company sites, public filings) â may be aggregated, rewritten and published by the Operator on the website, newsletter and social accounts (including X and LinkedIn), under its own editorial responsibility. Publication is limited to items about companies or persons of sufficient notoriety, and excludes material that has not yet appeared in public sources when the source is a proprietary sourcing engine. No fund slug, score, match or thesis identifier may appear in any public post, image filename or JSON payload. Company logos are displayed when resolved from the company's own site (or a monogram fallback); LinkedIn profile photographs are never used. Trade names and logos remain the property of their owners; no partnership is implied. The Operator applies the same conditional rule as for deals: an exclusive or announced process may be reported; a rumour or conditional wording ("would be", "might") is not published as fact.`]})]})},{title:"6. Intellectual Property",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:"All rights, title, and interest in and to the Service, its software, models, prompts, pipelines, documentation, trademarks, logos, and any improvements thereto, are and shall remain the exclusive property of the Operator and/or its licensors. No rights are granted to the User other than the limited, revocable, non-exclusive, non-transferable right to use the Service for internal business purposes during the subscription term."}),e.jsx(Z,{children:"Any feedback, suggestion, or idea provided by the User may be used by the Operator without restriction or compensation."})]})},{title:"7. Fees, Payment & Taxes",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:"Fees applicable to the User are set out in the applicable order form or published pricing. Unless otherwise agreed in writing, fees are (a) stated excluding taxes, (b) non-refundable, (c) invoiced in advance of the service period, and (d) payable within thirty (30) days of invoice date, except for any initial deposit which is due upon receipt."}),e.jsx(Z,{children:"Billing frequency (e.g. monthly, quarterly, or annually in advance) is defined in the applicable Master Agreement or order form. Where the Master Agreement provides for distinct cadences for different subscription tiers, each cadence governs the tier to which it applies."}),e.jsx(Z,{children:`Any initial deposit, architecture fee, setup fee, onboarding fee, or similar one-time amount paid by the User is firm, non-refundable, and non-creditable in all circumstances, including without limitation: (i) the User's rejection of any calibration, configuration, or go-live deliverable; (ii) failure of any milestone or "go-live" validation, whether express or deemed; (iii) termination, suspension, or non-renewal by either party for any reason; and (iv) any exercise of a performance guarantee, opt-out, trial right, or contractual termination right available to the User. The parties expressly acknowledge that such amounts compensate work actually performed during the setup, architecture, calibration, and onboarding phases, which has independent economic value irrespective of the subsequent outcome of any later phase or of the User's continued use of the Service.`}),e.jsx(Z,{children:"Late payments accrue interest at the legal rate applicable in the Operator's jurisdiction, plus a fixed recovery fee, without prior notice being required. The Operator may suspend access to the Service for any overdue amount."})]})},{title:"8. Term, Termination & Suspension",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:"The initial term and renewal conditions of any subscription are defined in the applicable order form or Master Agreement. Absent such a document, the Service is provided on a month-to-month basis terminable by either party with thirty (30) days' written notice. Where the Master Agreement provides for a Day 90 Performance Guarantee, a one-time opt-out right, or any other early-termination mechanism, such rights govern early termination during the initial term and prevail over the default month-to-month rule above."}),e.jsx(Z,{children:"The Operator may suspend or terminate access immediately, without liability, in case of (i) material breach by the User not remedied within ten (10) business days, (ii) non-payment, (iii) use of the Service in a manner that threatens its security, integrity, or legality, or (iv) requirement by applicable law, court order, or competent authority."}),e.jsx(Z,{children:"Upon termination, the User's right to access and use the Service ceases immediately. Sections relating to intellectual property, confidentiality, liability, indemnity, warranties, and governing law survive termination."})]})},{title:"9. Disclaimer of Warranties",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:e.jsx(de,{children:'TO THE MAXIMUM EXTENT PERMITTED BY LAW, THE SERVICE IS PROVIDED "AS IS" AND "AS AVAILABLE", WITHOUT ANY WARRANTY OF ANY KIND, EXPRESS, IMPLIED, STATUTORY OR OTHERWISE, INCLUDING WITHOUT LIMITATION WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, ACCURACY, RELIABILITY, AVAILABILITY, OR THAT THE SERVICE WILL BE UNINTERRUPTED, ERROR-FREE, OR FREE OF HARMFUL COMPONENTS.'})}),e.jsx(Z,{children:"No advice or information, whether oral or written, obtained by the User from the Operator or through the Service creates any warranty not expressly stated in these Terms."})]})},{title:"10. Limitation of Liability",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:e.jsx(de,{children:"TO THE MAXIMUM EXTENT PERMITTED BY LAW, IN NO EVENT SHALL THE OPERATOR, ITS AFFILIATES, OFFICERS, DIRECTORS, EMPLOYEES, AGENTS, PARTNERS, OR LICENSORS BE LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, EXEMPLARY, OR PUNITIVE DAMAGES, INCLUDING WITHOUT LIMITATION LOSS OF PROFITS, LOSS OF REVENUE, LOSS OF BUSINESS OPPORTUNITY, LOSS OF INVESTMENT RETURN, LOSS OF DEALS, LOSS OF GOODWILL, LOSS OR CORRUPTION OF DATA, OR COST OF SUBSTITUTE SERVICES, ARISING OUT OF OR RELATED TO THE SERVICE, ITS USE OR INABILITY TO USE IT, OR ANY OUTPUT THEREOF, WHETHER BASED ON CONTRACT, TORT (INCLUDING NEGLIGENCE), STRICT LIABILITY, OR ANY OTHER LEGAL THEORY, AND WHETHER OR NOT THE OPERATOR HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES."})}),e.jsx(Z,{children:e.jsx(de,{children:"THE OPERATOR'S TOTAL AGGREGATE LIABILITY TO THE USER FOR ALL CLAIMS, LOSSES, AND DAMAGES, WHETHER IN CONTRACT, TORT, OR OTHERWISE, ARISING OUT OF OR RELATED TO THE SERVICE SHALL NOT EXCEED THE TOTAL FEES ACTUALLY PAID BY THE USER TO THE OPERATOR DURING THE TWELVE (12) MONTHS IMMEDIATELY PRECEDING THE EVENT GIVING RISE TO THE CLAIM. FOR USERS ON A FREE, TRIAL, OR UNPAID PLAN, THE OPERATOR'S TOTAL LIABILITY SHALL NOT EXCEED ONE HUNDRED EUROS (â¬100)."})}),e.jsx(Z,{children:"The User expressly acknowledges that these limitations are a fundamental basis of the bargain and would not be entered into by the Operator absent such limitations."})]})},{title:"11. Indemnification",body:e.jsx(e.Fragment,{children:e.jsx(Z,{children:"The User shall defend, indemnify, and hold harmless the Operator, its affiliates, and their respective officers, directors, employees, agents, and representatives from and against any and all third-party claims, demands, actions, proceedings, liabilities, losses, damages, fines, penalties, costs, and expenses (including reasonable legal fees) arising out of or related to: (a) the User's breach of these Terms; (b) the User's misuse of the Service or any output thereof; (c) the User Data; (d) the User's violation of any law or third-party right; or (e) any investment, transactional, or operational decision made by the User or any third party relying on the Service."})})},{title:"12. Confidentiality",body:e.jsx(e.Fragment,{children:e.jsx(Z,{children:"Each party shall keep confidential any non-public information disclosed by the other in connection with the Service, and use it only for the purpose of performing under these Terms. Confidentiality obligations survive termination for five (5) years."})})},{title:"13. Third-Party Services & Dependencies",body:e.jsx(e.Fragment,{children:e.jsx(Z,{children:"The Service relies on third-party infrastru
3408cture and model providers (including cloud hosting, database, and AI providers). The Operator is not responsible for any outage, defect, security incident, or change in policy of any such third party. The Operator reserves the right to change providers at its sole discretion."})})},{title:"14. Force Majeure",body:e.jsx(e.Fragment,{children:e.jsx(Z,{children:"Neither party shall be liable for any delay or failure to perform resulting from causes beyond its reasonable control, including acts of God, war, terrorism, cyberattacks, internet outages, power failures, governmental action, epidemics, or supplier failures."})})},{title:"15. Changes to the Terms",body:e.jsx(e.Fragment,{children:e.jsx(Z,{children:"The Operator may modify these Terms at any time. Material changes will be notified via the Service or by email. Continued use of the Service after the effective date of the change constitutes acceptance of the updated Terms. If the User does not agree, its sole remedy is to cease using the Service."})})},{title:"16. Governing Law & Jurisdiction",body:e.jsx(e.Fragment,{children:e.jsxs(Z,{children:["These Terms are governed by and construed in accordance with the laws of ",e.jsx(de,{children:"France"}),", without regard to its conflict of laws rules. Any dispute arising out of or in connection with these Terms shall be submitted to the"," ",e.jsx(de,{children:"exclusive jurisdiction of the competent courts of Paris, France"}),", notwithstanding multiple defendants or third-party claims. Nothing in this clause limits any non-waivable right of consumers under mandatory law."]})})},{title:"17. Miscellaneous",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:"If any provision of these Terms is held unenforceable, the remaining provisions remain in full force and effect. The failure to enforce any provision is not a waiver. These Terms, together with any applicable Master Agreement, constitute the entire agreement between the parties regarding the Service and supersede all prior discussions."}),e.jsx(Z,{children:"The User may not assign these Terms without prior written consent. The Operator may freely assign these Terms to any successor, affiliate, or acquirer."})]})},{title:"18. Legal Notice & Hosting",body:e.jsxs(e.Fragment,{children:[e.jsxs(Z,{children:["This site is operated from France. Hosting and serverless compute are provided by ",e.jsx(de,{children:"Modal Labs, Inc."})," (San Francisco, California, United States â ",e.jsx("a",{href:"https://modal.com",target:"_blank",rel:"noreferrer",children:"modal.com"}),"). Structured data records are stored on ",e.jsx(de,{children:"Airtable, Inc."})," (San Francisco, California, United States â SOC 2 Type II certified). Static frontend assets are served through a global content delivery network."]}),e.jsx(Z,{children:"The content of this site (text, graphics, logos, code, and design) is protected by copyright and applicable intellectual property laws. Any reproduction, representation, or distribution, in whole or in part, without prior written authorisation, is prohibited."}),e.jsxs(Z,{children:["Pursuant to Article 6 of the French LCEN law of 21 June 2004, any illicit content observed on this site may be reported to"," ",e.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"}),"."]})]})},{title:"19. Contact",body:e.jsx(e.Fragment,{children:e.jsxs(Z,{children:["Questions regarding these Terms may be addressed to"," ",e.jsx("a",{href:"mailto:[email protected]",style:{color:"var(--green)"},children:"[email protected]"}),"."]})})}]},fr:{seo:{title:"Conditions générales dâutilisation â Proplace",description:"Les conditions qui régissent lâaccès et lâutilisation de Proplace et de ses outils de sourcing, dâanalyses et dâaide à la décision propulsés par lâIA."},backHome:"â Retour à lâaccueil",pageTitle:"Conditions générales dâutilisation",lastUpdated:"Dernière mise à jour : août 2026",sections:[{title:"1. Acceptation des présentes Conditions",body:e.jsxs(e.Fragment,{children:[e.jsxs(Z,{children:["Les présentes Conditions générales dâutilisation (les"," ",e.jsx(de,{children:"« Conditions »"}
3408),") régissent lâaccès et lâutilisation du site web, de la plateforme, du logiciel, des API, des tableaux de bord, des sorties dâIA, des rapports, des mémos et des services associés (collectivement, le ",e.jsx(de,{children:"« Service »"}),") mis à disposition par lâexploitant de ce site web (lâ",e.jsx(de,{children:"« Exploitant »"}),", ",e.jsx(de,{children:"« nous »"})," ","ou ",e.jsx(de,{children:"« notre »"}),"). En accédant au Service, en le parcourant, en vous y inscrivant ou en lâutilisant, lâutilisateur (",e.jsx(de,{children:"« vous »"}),","," ",e.jsx(de,{children:"« Utilisateur »"})," ou ",e.jsx(de,{children:"« Client »"}),") accepte les présentes Conditions dans leur intégralité. Si vous nâêtes pas dâaccord, nâutilisez pas le Service."]}),e.jsxs(Z,{children:["Lorsquâun contrat-cadre de services, un bon de commande ou un contrat dâabonnement écrit distinct (un ",e.jsx(de,{children:"« Contrat-cadre »"}),") a été signé entre les parties, le Contrat-cadre prévaut en cas de conflit avec les présentes Conditions ; à défaut, les présentes Conditions sâappliquent dans leur intégralité."]})]})},{title:"2. Nature du Service â à titre informatif uniquement",body:e.jsxs(e.Fragment,{children:[e.jsxs(Z,{children:["Le Service fournit des outils logiciels, des tableaux de bord et des analyses générées par IA (y compris, sans sây limiter, des mémos, des scores, des synthèses de marché, des synthèses financières et des évaluations qualitatives) qui sont destinés uniquement à servir dâ",e.jsx(de,{children:"outils dâinformation et dâaide à la décision"}),"."]}),e.jsxs(Z,{children:["Le Service ",e.jsx(de,{children:"ne constitue pas"}
3408),", et ne doit pas être considéré comme : (a) un conseil en investissement, un conseil financier, un conseil fiscal, un conseil juridique, un conseil comptable, ni une sollicitation dâachat ou de vente dâun quelconque titre ou instrument financier ; (b) une recommandation dâengager, de décliner ou de sortir dâune quelconque transaction ; (c) une due diligence professionnelle ; (d) une attestation dâéquité ; (e) un service financier réglementé au sens de toute législation applicable en matière de valeurs mobilières ou de services financiers."]}),e.jsx(Z,{children:"LâUtilisateur est seul responsable de lâensemble de ses décisions dâinvestissement, transactionnelles et opérationnelles, et doit procéder à ses propres vérifications indépendantes, à sa propre due diligence et consulter des professionnels qualifiés avant dâagir sur la base de toute sortie du Service."})]})},{title:"3. Sorties dâIA â aucune garantie dâexactitude",body:e.jsxs(e.Fragment,{children:[e.jsxs(Z,{children:["Les sorties produites par le Service sont générées par des modèles statistiques, des grands modèles de langage, des fournisseurs de données tiers et des pipelines automatisés. Elles peuvent contenir des erreurs, des omissions, des inexactitudes, des hallucinations, des informations obsolètes, des propos mal attribués ou des contenus fabriqués. LâExploitant ne donne"," ",e.jsx(de,{children:"aucune déclaration ni garantie"}),", expresse ou implicite, quant à lâexactitude, lâexhaustivité, lâactualité, lâadéquation, la légalité, lâabsence de contrefaçon ou lâaptitude à un usage particulier de toute sortie."]}),e.jsxs(Z,{children:["Toutes les sorties sont fournies ",e.jsx(de,{children:"« en lâétat »"})," et"," ",e.jsx(de,{children:"« selon disponibilité »"}),". LâUtilisateur reconnaît avoir été pleinement informé de la nature probabiliste des contenus générés par IA et assume lâensemble des risques découlant de leur utilisation."]})]})},{title:"4. Utilisation acceptable",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:"LâUtilisateur sâengage à ne pas :"}),e.jsxs(rm,{children:[e.jsx(zt,{children:"utiliser le Service en violation de toute loi, réglementation, sanction ou droit de tiers applicable ;"}),e.jsx(zt,{children:"téléverser, transmettre ou traiter des données qui portent atteinte à des droits de propriété intellectuelle, violent les lois sur la vie privée ou la protection des données, ou constituent un contenu illicite ;"}),e.jsx(zt,{children:"réaliser de lâingénierie inverse, décompiler, extraire, copier ou tenter dâextraire les modèles, prompts ou données dâentraînement sous-jacents du Service ;"}),e.jsx(zt,{children:"revendre, sous-licencier ou redistribuer le Service ou ses sorties à des tiers, sauf autorisation expresse ;"}),e.jsx(zt,{children:"contourner les mécanismes dâauthentification, les limites de débit, les contrôles de sécurité ou lâisolation entre clients ;"}),e.jsx(zt,{children:"utiliser le Service pour construire un produit concurrent, réaliser un benchmark destiné à publication ou entraîner un modèle concurrent."})]})]})},{title:"5. Données et contenus de lâUtilisateur",body:e.jsxs(e.Fragment,{children:[e.jsxs(Z,{children:["LâUtilisateur conserve la propriété des données, documents et paramètres quâil soumet au Service (",e.jsx(de,{children:"« Données Utilisateur »"}),"). LâUtilisateur concède à lâExploitant une licence mondiale, gratuite et non exclusive pour héberger, copier, transmettre, afficher, traiter et sous-traiter les Données Utilisateur, uniquement dans la mesure nécessaire pour exploiter, maintenir, améliorer et sécuriser le Service."]}),e.jsx(Z,{children:"LâUtilisateur déclare et garantit que (i) il dispose de tous les droits requis pour soumettre les Données Utilisateur, (ii) les Données Utilisateur ne portent atteinte à aucun droit de tiers, (iii) il ne soumettra pas de données personnelles, confidentielles ou réglementées, sauf dans la mesure permise par la loi applicable et tout Contrat-cadre, et (iv) il respectera lâensemble des obligations applicables en matière de KYC, de lutte contre le blanchiment (AML), dâabus de marché, de délit dâinitié et de secret professionnel dans son utilisation du Service et de ses sorties."}),e.jsxs(Z,{children:["Les Données Utilisateur ne sont ",e.jsx(de,{children:"pas"})," utilisées pour entraîner les modèles de fondation de nos fournisseurs. Nous pouvons utiliser des données de télémétrie agrégées, anonymisées et non identifiables pour superviser et améliorer le Service."]}),e.jsxs(Z,{children:[e.jsx(de,{children:"Ãditorial de marché public vs. données de fonds (validé le 11/08/2026)."})," ","Deux flux ne se confondent pas. (i) Les ",e.jsx(de,{children:"Données de fonds"})," â thèses, listes de cibles, scores, notes de match et toute information identifiant un fonds Client ou son pipeline â restent dans le contexte authentifié de ce Client et ne sont jamais publiées sur les réseaux sociaux ni sur les pages publiques du Service. (ii) Lâ",e.jsx(de,{children:"éditorial de marché public"})," â actualités de M&A, levées, recrutements et nominations tirées de sources publiques (presse, sites de sociétés, dépôts publics) â peut être agrégé, reformulé et publié par lâExploitant sur le site, la newsletter et les comptes s
3408ociaux (dont X et LinkedIn), sous sa responsabilité éditoriale. La publication se limite aux sociétés ou personnes dâune notoriété suffisante, et exclut ce qui nâa pas encore paru dans la presse lorsque la source est un moteur de sourcing propriétaire. Aucun slug de fonds, score, match ou identifiant de thèse ne peut figurer dans un post public, un nom de fichier image ou un payload JSON. Les logos de sociétés sont affichés lorsquâils sont résolus depuis le site de la société (sinon monogramme) ; les photographies de profil LinkedIn ne sont jamais utilisées. Les dénominations et logos cités appartiennent à leurs titulaires ; aucun lien de partenariat nâest suggéré. La même règle de conditionnel sâapplique quâaux opérations : exclusive ou annoncée compte ; rumeur ou formulation au conditionnel (« serait », « pourrait ») nâest pas publiée comme un fait."]})]})},{title:"6. Propriété intellectuelle",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:"Lâensemble des droits, titres et intérêts sur le Service, son logiciel, ses modèles, ses prompts, ses pipelines, sa documentation, ses marques, ses logos et toute amélioration y afférente sont et demeureront la propriété exclusive de lâExploitant et/ou de ses concédants. Aucun droit nâest accordé à lâUtilisateur, hormis le droit limité, révocable, non exclusif et non transférable dâutiliser le Service à des fins commerciales internes pendant la durée de lâabonnement."}),e.jsx(Z,{children:"Tout retour, toute suggestion ou toute idée fournis par lâUtilisateur peuvent être utilisés par lâExploitant sans restriction ni contrepartie."})]})},{title:"7. Frais, paiement et taxes",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:"Les frais applicables à lâUtilisateur sont indiqués dans le bon de commande applicable ou dans la tarification publiée. Sauf accord écrit contraire, les frais sont (a) indiqués hors taxes, (b) non remboursables, (c) facturés à lâavance de la période de service, et (d) payables dans les trente (30) jours suivant la date de facture, à lâexception de tout acompte initial qui est dû dès réception."}),e.jsx(Z,{children:"La fréquence de facturation (par exemple mensuelle, trimestrielle ou annuelle, à lâavance) est définie dans le Contrat-cadre ou le bon de commande applicable. Lorsque le Contrat-cadre prévoit des cadences distinctes pour différents niveaux dâabonnement, chaque cadence régit le niveau auquel elle sâapplique."}),e.jsx(Z,{children:"Tout acompte initial, frais dâarchitecture, frais de mise en place, frais dâonboarding ou autre montant unique similaire payé par lâUtilisateur est ferme, non remboursable et non créditable en toutes circonstances, y compris, sans sây limiter : (i) le rejet par lâUtilisateur de tout livrable de calibrage, de configuration ou de mise en service ; (ii) lâéchec de toute étape clé ou validation de « mise en service » (« go-live »), quâil soit exprès ou réputé ; (iii) la résiliation, la suspension ou le non-renouvellement par lâune ou lâautre partie pour quelque raison que ce soit ; et (iv) tout exercice dâune garantie de performance, dâun droit de retrait, dâun droit dâessai ou dâun droit de résiliation contractuel à la disposition de lâUtilisateur. Les parties reconnaissent expressément que ces montants rémunèrent un travail effectivement réalisé pendant les phases de mise en place, dâarchitecture, de calibrage et dâonboarding, lequel a une valeur économique propre indépendamment de lâissue ultérieure de toute phase suivante ou de lâutilisation continue du Service par lâUtilisateur."}),e.jsx(Z,{children:"Les paiements en retard portent intérêt au taux légal applicable dans la juridiction de lâExploitant, majoré dâune indemnité forfaitaire de recouvrement, sans quâune mise en demeure préalable soit requise. LâExploitant peut suspendre lâaccès au Service pour tout montant impayé."})]})},{title:"8. Durée, résiliation et suspension",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:"La durée initiale et les conditions de renouvellement de tout abonnement sont définies dans le bon de commande ou le Contrat-cadre applicable. à défaut dâun tel document, le Service est fourni au mois le mois, résiliable par lâune ou lâautre partie moyennant un préavis écrit de trente (30) jours. Lorsque le Contrat-cadre prévoit une Garantie de performance à 90 jours, un droit de retrait unique ou tout autre mécanisme de résiliation anticipée, ces droits régissent la résiliation anticipée pendant la durée initiale et prévalent sur la règle par défaut du mois le mois ci-dessus."}),e.jsx(Z,{children:"LâExploitant peut suspendre ou résilier lâaccè
3408s immédiatement, sans engager sa responsabilité, en cas de (i) manquement substantiel de lâUtilisateur non corrigé dans un délai de dix (10) jours ouvrés, (ii) défaut de paiement, (iii) utilisation du Service dâune manière qui menace sa sécurité, son intégrité ou sa légalité, ou (iv) exigence imposée par la loi applicable, une décision de justice ou une autorité compétente."}),e.jsx(Z,{children:"à la résiliation, le droit de lâUtilisateur dâaccéder au Service et de lâutiliser cesse immédiatement. Les sections relatives à la propriété intellectuelle, à la confidentialité, à la responsabilité, à lâindemnisation, aux garanties et au droit applicable survivent à la résiliation."})]})},{title:"9. Exclusion de garanties",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:e.jsx(de,{children:"DANS TOUTE LA MESURE PERMISE PAR LA LOI, LE SERVICE EST FOURNI « EN LâÃTAT » ET « SELON DISPONIBILITà », SANS AUCUNE GARANTIE DâAUCUNE SORTE, EXPRESSE, IMPLICITE, LÃGALE OU AUTRE, Y COMPRIS SANS LIMITATION LES GARANTIES DE QUALITà MARCHANDE, DâAPTITUDE à UN USAGE PARTICULIER, DâABSENCE DE CONTREFAÃON, DâEXACTITUDE, DE FIABILITÃ, DE DISPONIBILITÃ, OU QUE LE SERVICE SERA ININTERROMPU, EXEMPT DâERREUR OU EXEMPT DE COMPOSANTS NUISIBLES."})}),e.jsx(Z,{children:"Aucun conseil ni aucune information, quâil soit oral ou écrit, obtenu par lâUtilisateur auprès de lâExploitant ou par le biais du Service, ne crée de garantie qui ne soit pas expressément énoncée dans les présentes Conditions."})]})},{title:"10. Limitation de responsabilité",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:e.jsx(de,{children:"DANS TOUTE LA MESURE PERMISE PAR LA LOI, EN AUCUN CAS LâEXPLOITANT, SES SOCIÃTÃS AFFILIÃES, DIRIGEANTS, ADMINISTRATEURS, EMPLOYÃS, AGENTS, PARTENAIRES OU CONCÃDANTS NE SAURAIENT ÃTRE TENUS RESPONSABLES DE TOUT DOMMAGE INDIRECT, ACCESSOIRE, SPÃCIAL, CONSÃCUTIF, EXEMPLAIRE OU PUNITIF, Y COMPRIS SANS LIMITATION LA PERTE DE PROFITS, LA PERTE DE REVENUS, LA PERTE DâOPPORTUNITà COMMERCIALE, LA PERTE DE RENDEMENT DâINVESTISSEMENT, LA PERTE DE TRANSACTIONS, LA PERTE DE CLIENTÃLE, LA PERTE OU LA CORRUPTION DE DONNÃES, OU LE COÃT DE SERVICES DE SUBSTITUTION, DÃCOULANT DU SERVICE OU LIÃS à CELUI-CI, à SON UTILISATION OU à LâIMPOSSIBILITà DE LâUTILISER, OU à TOUTE SORTIE DE CELUI-CI, QUâILS SOIENT FONDÃS SUR LE CONTRAT, LA RESPONSABILITà DÃLICTUELLE (Y COMPRIS LA NÃGLIGENCE), LA RESPONSABILITà STRICTE OU TOUTE AUTRE THÃORIE JURIDIQUE, ET QUE LâEXPLOITANT AIT ÃTà OU NON AVISà DE LA POSSIBILITà DE TELS DOMMAGES."})}),e.jsx(Z,{children:e.jsx(de,{children:"LA RESPONSABILITà GLOBALE TOTALE DE LâEXPLOITANT ENVERS LâUTILISATEUR POUR LâENSEMBLE DES RÃCLAMATIONS, PERTES ET DOMMAGES, QUâILS SOIENT DE NATURE CONTRACTUELLE, DÃLICTUELLE OU AUTRE, DÃCOULANT DU SERVICE OU LIÃS à CELUI-CI, NE SAURAIT EXCÃDER LE MONTANT TOTAL DES FRAIS EFFECTIVEMENT PAYÃS PAR LâUTILISATEUR à LâEXPLOITANT AU COURS DES DOUZE (12) MOIS PRÃCÃDANT IMMÃDIATEMENT LâÃVÃNEMENT à LâORIGINE DE LA RÃCLAMATION. POUR LES UTILISATEURS SUR UN PLAN GRATUIT, DâESSAI OU NON PAYANT, LA RESPONSABILITà TOTALE DE LâEXPLOITANT NE SAURAIT EXCÃDER CENT EUROS (â¬100)."})}),e.jsx(Z,{children:"LâUtilisateur reconnaît expressément que ces limitations constituent un fondement essentiel de lâaccord et que lâExploitant nâaurait pas contracté en leur absence."})]})},{title:"11. Indemnisation",body:e.jsx(e.Fragment,{children:e.jsx(Z,{children:"LâUtilisateur sâengage à défendre, indemniser et garantir lâExploitant, ses sociétés affiliées et leurs dirigeants, administrateurs, employés, agents et représentants respectifs contre toutes réclamations, demandes, actions, procédures, responsabilités, pertes, dommages, amendes, pénalités, coûts et dépenses de tiers (y compris les frais juridiques raisonnables) découlant de ou liés à : (a) le manquement de lâUtilisateur aux présentes Conditions ; (b) la mauvaise utilisation par lâUtilisateur du Service ou de toute sortie de celui-ci ; (c) les Données Utilisateur ; (d) la violation par lâUtilisateur de toute loi ou de tout droit de tiers ; ou (e) toute décision dâinvestissement, transactionnelle ou opérationnelle prise par lâUtilisateur ou par tout tiers se fiant au Service."})})},{title:"12. Confidentialité",body:e.jsx(e.Fragment,{children:e.jsx(Z,{children:"Chaque partie sâengage à garder confidentielle toute information non publique divulguée par lâautre dans le cadre du Service, et à ne lâutiliser quâaux fins de lâexécution des présentes Conditions. Les obligations de confidentialité survivent à la résiliation pendant cinq (5) ans."})})},{title:"13. Services et dépendances de tiers",body:e.jsx(e.Fragment,{children:e.jsx(Z,{children:"Le Service repose sur des infrastru
3408ctures et des fournisseurs de modèles tiers (notamment dâhébergement cloud, de bases de données et de fournisseurs dâIA). LâExploitant nâest pas responsable de toute panne, défaut, incident de sécurité ou changement de politique dâun tel tiers. LâExploitant se réserve le droit de changer de fournisseur à sa seule discrétion."})})},{title:"14. Force majeure",body:e.jsx(e.Fragment,{children:e.jsx(Z,{children:"Aucune des parties ne saurait être tenue responsable dâun retard ou dâun défaut dâexécution résultant de causes échappant à son contrôle raisonnable, y compris les cas de force majeure, la guerre, le terrorisme, les cyberattaques, les pannes dâInternet, les coupures de courant, les actions gouvernementales, les épidémies ou les défaillances de fournisseurs."})})},{title:"15. Modifications des Conditions",body:e.jsx(e.Fragment,{children:e.jsx(Z,{children:"LâExploitant peut modifier les présentes Conditions à tout moment. Les modifications substantielles seront notifiées via le Service ou par e-mail. La poursuite de lâutilisation du Service après la date dâentrée en vigueur de la modification vaut acceptation des Conditions mises à jour. Si lâUtilisateur nâest pas dâaccord, son seul recours est de cesser dâutiliser le Service."})})},{title:"16. Droit applicable et juridiction",body:e.jsx(e.Fragment,{children:e.jsxs(Z,{children:["Les présentes Conditions sont régies et interprétées conformément au droit ",e.jsx(de,{children:"français"}),", sans égard à ses règles de conflit de lois. Tout litige découlant des présentes Conditions ou en lien avec celles-ci sera soumis à la"," ",e.jsx(de,{children:"compétence exclusive des tribunaux compétents de Paris, France"}),", nonobstant la pluralité de défendeurs ou lâappel en garantie. Aucune disposition de la présente clause ne limite un quelconque droit non susceptible de renonciation des consommateurs au titre des dis
3408positions impératives."]})})},{title:"17. Dispositions diverses",body:e.jsxs(e.Fragment,{children:[e.jsx(Z,{children:"Si une disposition des présentes Conditions est jugée inapplicable, les dispositions restantes demeurent pleinement en vigueur. Le fait de ne pas faire appliquer une disposition ne constitue pas une renonciation. Les présentes Conditions, ainsi que tout Contrat-cadre applicable, constituent lâintégralité de lâaccord entre les parties concernant le Service et remplacent toutes les discussions antérieures."}),e.jsx(Z,{children:"LâUtilisateur ne peut céder les présentes Conditions sans accord écrit préalable. LâExploitant peut librement céder les présentes Conditions à tout successeur, société affiliée ou acquéreur."})]})},{title:"18. Mentions légales et hébergement",body:e.jsxs(e.Fragment,{children:[e.jsxs(Z,{children:["Ce site est exploité depuis la France. Lâhébergement et le calcul serverless sont fournis par ",e.jsx(de,{children:"Modal Labs, Inc."})," (San Francisco, Californie, Ãtats-Unis â ",e.jsx("a",{href:"https://modal.com",target:"_blank",rel:"noreferrer",children:"modal.com"}),"). Les enregistrements de données structurées sont stockés chez"," ",e.jsx(de,{children:"Airtable, Inc."})," (San Francisco, Californie, Ãtats-Unis â certifié SOC 2 Type II). Les ressources statiques du front-end sont servies via un réseau mondial de diffusion de contenu (CDN)."]}),e.jsx(Z,{children:"Le contenu de ce site (textes, graphiques, logos, code et design) est protégé par le droit dâauteur et les lois applicables en matière de propriété intellectuelle. Toute reproduction, représentation ou distribution, en tout ou partie, sans autorisation écrite préalable, est interdite."}),e.jsxs(Z,{children:["Conformément à lâarticle 6 de la loi française LCEN du 21 juin 2004, tout contenu illicite constaté sur ce site peut être signalé à "," ",e.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"}),"."]})]})},{title:"19. Contact",body:e.jsx(e.Fragment,{children:e.jsxs(Z,{children:["Toute question relative aux présentes Conditions peut être adressée à "," ",e.jsx("a",{href:"mailto:[email protected]",style:{color:"var(--green)"},children:"[email protected]"}),"."]})})}]}};function aj(){const{lang:t,localizePath:n}=ae(),r=ic[t];return ht({en:ic.en.seo,fr:ic.fr.seo}),e.jsxs("div",{style:{background:"var(--bg)",minHeight:"100vh"},children:[e.jsxs("div",{className:"wrap-wide",style:{paddingTop:80,paddingBottom:80,maxWidth:820},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:12,flexWrap:"wrap"},children:[e.jsx(Ti,{to:n("/"),style:{fontSize:12,color:"var(--sub)",textDecoration:"none",letterSpacing:".08em",textTransform:"uppercase"},children:r.backHome}),e.jsx(ea,{})]}),e.jsx("h1",{className:"h2",style:{marginTop:16,marginBottom:8,fontSize:36},children:r.pageTitle}),e.jsx("p",{style:{color:"var(--lite, #9aa3a1)",fontSize:12,marginBottom:40},children:r.lastUpdated}),e.jsx("div",{className:"legal-body",children:r.sections.map(i=>e.jsx(oj,{title:i.title,children:i.body},i.title))})]}),e.jsx("style",{children:lj})]})}function oj({title:t,children:n}){return e.jsxs("section",{style:{marginBottom:32},children:[e.jsx("h2",{style:{fontSize:15,fontWeight:700,color:"var(--ink)",marginBottom:12,letterSpacing:"-.01em"},children:t}),e.jsx("div",{children:n})]})}function Z({children:t}){return e.jsx("p",{style:{fontSize:13.5,lineHeight:1.75,color:"var(--sub)",marginBottom:10},children:t})}function de({children:t}){return e.jsx("strong",{style:{color:"var(--ink)",fontWeight:600},children:t})}function rm({children:t}){return e.jsx("ul",{style:{fontSize:13.5,lineHeight:1.75,color:"var(--sub)",marginBottom:10,paddingLeft:20},children:t})}function zt({children:t}){return e.jsx("li",{style:{marginBottom:4},children:t})}const lj=` 3409.legal-body a { color: var(--green); text-decoration: none; } 3410.legal-body a:hover { text-decoration: underline; } 3411`,cj={en:{back:"â Back to home",pageTitle:"Privacy Policy",lastUpdated:"Last updated: April 2026",s1Title:"1. Overview",s1Body:e.jsxs(Te,{children:["This Privacy Policy explains how the operator of this website (the ",e.jsx(ue,{children:'"Operator"'}),", ",e.jsx(ue,{children:'"we"'}),", ",e.jsx(ue,{children:'"us"'}),") processes personal data in connection with the website, platform, APIs, dashboards, and related services (the ",e.jsx(ue,{children:'"Service"'}),"). We act as ",e.jsx(ue,{children:"data controller"})," for data we collect directly from visitors and account holders, and as ",e.jsx(ue,{children:"data processor"})," for personal data that our business clients upload into the Service on behalf of their own end users."]}),s2Title:"2. Data we collect",s2Body:e.jsxs(Wn,{children:[e.jsxs(je,{children:[e.jsx(ue,{children:"Account data"}),": name, email, organisation, job title, authentication credentials."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Usage data"}),": logs, timestamps, IP address, browser and device metadata, pages visited, actions performed, errors."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Content data"}),": documents, parameters, prompts, files, and other inputs submitted by users."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Communications"}),": emails, support tickets, and feedback you send us."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Billing data"}),": where applicable, name, address, VAT ID, and payment information processed by our payment provider."]})]}),s3Title:"3. Purposes and legal bases (GDPR art. 6)",s3Body:e.jsxs(Wn,{children:[e.jsxs(je,{children:[e.jsx(ue,{children:"Providing the Service"})," â performance of a contract (art. 6(1)(b))."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Security, fraud prevention, logging"})," â legitimate interest (art. 6(1)(f)) in protecting the Service and its users."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Service improvement via aggregated telemetry"})," â legitimate interest (art. 6(1)(f))."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Billing and bookkeeping"})," â legal obligation (art. 6(1)(c))."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Marketing emails to existing clients"})," â legitimate interest with opt-out; ",e.jsx(ue,{children:"prospect marketing"})," â consent (art. 6(1)(a))."]})]}),s4Title:"4. Sub-processors and recipients",s4Intro:e.jsx(Te,{children:"We rely on a limited set of enterprise sub-processors to operate the Service, including:"}),s4List:e.jsxs(Wn,{children:[e.jsxs(je,{children:[e.jsx(ue,{children:"Database & record storage"}
3411),": a SOC 2 Type II / ISO 27001 certified structured-data provider."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Compute & hosting"}),": a SOC 2 Type II certified serverless compute provider."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"AI model providers"}),": enterprise LLM providers whose terms prohibit the use of customer prompts to train foundation models."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Email, analytics, support, and payment"})," providers as strictly necessary."]})]}),s4Outro:e.jsxs(Te,{children:["A current list of sub-processors is available on request at"," ",e.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"}),". Sub-processors are contractually bound to GDPR-compliant data protection standards."]}),s5Title:"5. International transfers",s5Body:e.jsx(Te,{children:"Some of our sub-processors are established outside the European Economic Area. Where personal data is transferred outside the EEA, the transfer is covered by a lawful transfer mechanism under the GDPR, such as the European Commission's Standard Contractual Clauses, an adequacy decision, or equivalent safeguards."}),s6Title:"6. Retention",s6Intro:e.jsx(Te,{children:"We retain personal data only for as long as necessary for the purposes set out in section 3:"}),s6List:e.jsxs(Wn,{children:[e.jsxs(je,{children:[e.jsx(ue,{children:"Account and content data"}),": for the duration of the contract and up to twelve (12) months after termination, then deleted or anonymised."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Logs and security data"}),": up to twelve (12) months."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Billing records"}),": ten (10) years to comply with accounting law."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Prospect marketing data"}),": three (3) years from last interaction."]})]}),s7Title:"7. Your rights (GDPR arts. 15â22)",s7Body1:e.jsx(Te,{children:"Subject to conditions set by law, you have the right to (a) access your data, (b) have it rectified, (c) request its erasure, (d) restrict or object to its processing, (e) receive it in a portable format, (f) withdraw consent at any time without affecting prior processing."}),s7Body2:e.jsxs(Te,{children:["To exercise these rights, contact"," ",e.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"}),". We respond within one (1) month."]}),s8Title:"8. Security",s8Body:e.jsx(Te,{children:"We implement technical and organisational measures appropriate to the risk, including encryption in transit (TLS 1.3), encryption at rest (AES-256 on our providers), access control, logging, server-side proxying of database credentials, and least-privilege access management. No method of transmission or storage is 100% secure; residual risk cannot be eliminated."}),s9Title:"9. Cookies",s9Body:e.jsx(Te,{children:"We use strictly necessary cookies to operate the Service (authentication, session, security). Where analytics or preference cookies are used, consent is requested on first visit, and may be withdrawn at any time via the cookie banner."}),s10Title:"10. AI processing",s10Body:e.jsx(Te,{children:"When you submit content to our AI features, the content is transmitted to our AI sub-processors under no-training contractual terms. Prompts and outputs may be retained by providers for abuse-monitoring purposes for a limited period as described in their respective terms, and are not used to train foundation models."}),s11Title:"11. Children",s11Body:e.jsx(Te,{children:"The Service is not directed to children under sixteen (16) and we do not knowingly collect personal data from them."}),s12Title:"12. Changes to this Policy",s12Body:e.jsx(Te,{children:'We may update this Policy from time to time. Material changes are notified via the Service or by email. The "Last updated" date at the top reflects the latest version.'}),s13Title:"13. Contact",s13Body:e.jsxs(Te,{children:["For any question regarding this Policy or our processing of personal data, contact"," ",e.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"}),"."]})},fr:{back:"â Retour à lâaccueil",pageTitle:"Politique de confidentialité",lastUpdated:"Dernière mise à jour : avril 2026",s1Title:"1. Présentation",s1Body:e.jsxs(Te,{children:["La présente Politique de confidentialité explique comment lâexploitant de ce site (lâ",e.jsx(ue,{children:"« Exploitant »"}),", ",e.jsx(ue,{children:"« nous »"}),") traite les données à caractère personnel dans le cadre du site, de la plateforme, des API, des tableaux de bord et des services associés (le ",e.jsx(ue,{children:"« Service »"}),"). Nous agissons en qualité de"," ",e.jsx(ue,{children:"responsable du traitement"})," pour les données que nous collectons directement auprès des visiteurs et des titulaires de compte, et en qualité de ",e.jsx(ue,{children:"sous-traitant"})," pour les données à caractère personnel que nos clients professionnels téléversent dans le Service pour le compte de leurs propres utilisateurs finaux."]}),s2Title:"2. Données que nous collectons",s2Body:e.jsxs(Wn,{children:[e.jsxs(je,{children:[e.jsx(ue,{children:"Données de compte"})," : nom, e-mail, organisation, fonction, identifiants dâauthentification."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Données dâusage"})," : journaux, horodatages, adresse IP, métadonnées du navigateur et de lâappareil, pages consultées, actions effectuées, erreurs."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Données de contenu"})," : documents, paramètres, prompts, fichiers et autres éléments soumis par les utilisateurs."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Communications"})," : e-mails, tickets de support et retours que vous nous adressez."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Données de facturation"})," : le cas échéant, nom, adresse, numéro de TVA et informations de paiement traitées par notre prestataire de paiement."]})]}),s3Title:"3. Finalités et bases légales (RGPD art. 6)",s3Body:e.jsxs(Wn,{children:[e.jsxs(je,{children:[e.jsx(ue,{children:"Fourniture du Service"})," â exécution dâun contrat (art. 6, § 1, b)."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Sécurité, prévention de la fraude, journalisation"})," â intérêt légitime (art. 6, § 1, f) à protéger le Service et ses utilisateurs."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Amélioration du Service via une télémétrie agrégée"})," â intérêt légitime (art. 6, § 1, f)."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Facturation et comptabilité"})," â obligation légale (art. 6, § 1, c)."]}
3411),e.jsxs(je,{children:[e.jsx(ue,{children:"E-mails marketing aux clients existants"})," â intérêt légitime avec faculté de désinscription ; ",e.jsx(ue,{children:"prospection commerciale"})," â consentement (art. 6, § 1, a)."]})]}),s4Title:"4. Sous-traitants et destinataires",s4Intro:e.jsx(Te,{children:"Nous recourons à un nombre limité de sous-traitants professionnels pour exploiter le Service, notamment :"}),s4List:e.jsxs(Wn,{children:[e.jsxs(je,{children:[e.jsx(ue,{children:"Base de données & stockage des enregistrements"})," : un prestataire de données structurées certifié SOC 2 Type II / ISO 27001."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Calcul & hébergement"})," : un prestataire de calcul serverless certifié SOC 2 Type II."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Fournisseurs de modèles dâIA"})," : des fournisseurs de LLM professionnels dont les conditions interdisent lâutilisation des prompts clients pour entraîner des modèles de fondation."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Fournisseurs dâe-mail, dâanalytique, de support et de paiement"}),", dans la stricte mesure du nécessaire."]})]}),s4Outro:e.jsxs(Te,{children:["Une liste à jour des sous-traitants est disponible sur demande à lâadresse"," ",e.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"}),". Les sous-traitants sont contractuellement tenus à des normes de protection des données conformes au RGPD."]}),s5Title:"5. Transferts internationaux",s5Body:e.jsx(Te,{children:"Certains de nos sous-traitants sont établis en dehors de lâEspace économique européen. Lorsque des données à caractère personnel sont transférées hors de lâEEE, le transfert est encadré par un mécanisme de transfert licite au titre du RGPD, tel que les Clauses contractuelles types de la Commission européenne, une décision dâadéquation ou des garanties équivalentes."}),s6Title:"6. Conservation",s6Intro:e.jsx(Te,{children:"Nous ne conservons les données à caractère personnel que le temps nécessaire aux finalités énoncées à la section 3 :"}),s6List:e.jsxs(Wn,{children:[e.jsxs(je,{children:[e.jsx(ue,{children:"Données de compte et de contenu"})," : pendant la durée du contrat et jusquâà douze (12) mois après sa résiliation, puis supprimées ou anonymisées."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Journaux et données de sécurité"})," : jusquâà douze (12) mois."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Pièces de facturation"})," : dix (10) ans afin de respecter la législation comptable."]}),e.jsxs(je,{children:[e.jsx(ue,{children:"Données de prospection commerciale"})," : trois (3) ans à compter de la dernière interaction."]})]}),s7Title:"7. Vos droits (RGPD art. 15 à 22)",s7Body1:e.jsx(Te,{children:"Sous réserve des conditions prévues par la loi, vous disposez du droit (a) dâaccéder à vos données, (b) de les faire rectifier, (c) dâen demander lâeffacement, (d) dâen limiter le traitement ou de vous y opposer, (e) de les recevoir dans un format portable, (f) de retirer votre consentement à tout moment, sans que cela nâaffecte les traitements antérieurs."}),s7Body2:e.jsxs(Te,{children:["Pour exercer ces droits, contactez"," ",e.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"}),". Nous répondons dans un délai dâun (1) mois."]}),s8Title:"8. Sécurité",s8Body:e.jsx(Te,{children:"Nous mettons en Åuvre des mesures techniques et organisationnelles adaptées au risque, notamment le chiffrement en transit (TLS 1.3), le chiffrement au repos (AES-256 chez nos prestataires), le contrôle dâaccès, la journalisation, le relayage côté serveur des identifiants de base de données et une gestion des accès au moindre privilège. Aucune méthode de transmission ou de stockage nâest sûre à 100 % ; le risque résiduel ne peut être totalement éliminé."}),s9Title:"9. Cookies",s9Body:e.jsx(Te,{children:"Nous utilisons des cookies strictement nécessaires au fonctionnement du Service (authentification, session, sécurité). Lorsque des cookies dâanalyse ou de préférences sont utilisés, votre consentement est recueilli lors de la première visite et peut être retiré à tout moment via le bandeau cookies."}),s10Title:"10. Traitement par lâIA",s10Body:e.jsx(Te,{children:"Lorsque vous soumettez du contenu à nos fonctionnalités dâIA, ce contenu est transmis à nos sous-traitants dâIA dans le cadre de conditions contractuelles « sans entraînement ». Les prompts et les résultats peuvent être conservés par les fournisseurs à des fins de surveillance des abus pendant une durée limitée, telle que décrite dans leurs conditions respectives, et ne sont pas utilisés pour entraîner des modèles de fondation."}),s11Title:"11. Mineurs",s11Body:e.jsx(Te,{children:"Le Service ne sâadresse pas aux enfants de moins de seize (16) ans et nous ne collectons pas sciemment de données à caractère personnel les concernant."}),s12Title:"12. Modifications de la présente Politique",s12Body:e.jsx(Te,{children:"Nous pouvons mettre à jour la présente Politique à tout moment. Les modifications substantielles sont notifiées via le Service ou par e-mail. La date de « Dernière mise à jour » figurant en haut reflète la version la plus récente."}),s13Title:"13. Contact",s13Body:e.jsxs(Te,{children:["Pour toute question relative à la présente Politique ou à notre traitement de vos données à caractère personnel, contactez"," ",e.jsx("a",{href:"mailto:[email protected]",children:"[email protected]"}),"."]})}},dj={en:{title:"Privacy Policy | Proplace",description:"How Proplace processes personal data: data collected, GDPR legal bases, sub-processors, transfers, retention, your rights and security."},fr:{title:"Politique de confidentialité | Proplace",description:"Comment Proplace traite vos données personnelles : données collectées, bases légales RGPD, sous-traitants, transferts, conservation, vos droits et sécurité."}};function pj(){const{lang:t,localizePath:n}
3411=ae(),r=cj[t];return ht(dj),e.jsxs("div",{style:{background:"var(--bg)",minHeight:"100vh"},children:[e.jsxs("div",{className:"wrap-wide",style:{paddingTop:80,paddingBottom:80,maxWidth:820},children:[e.jsxs("div",{style:{display:"flex",justifyContent:"space-between",alignItems:"center",gap:12,flexWrap:"wrap"},children:[e.jsx(Ti,{to:n("/"),style:{fontSize:12,color:"var(--sub)",textDecoration:"none",letterSpacing:".08em",textTransform:"uppercase"},children:r.back}),e.jsx(ea,{})]}),e.jsx("h1",{className:"h2",style:{marginTop:16,marginBottom:8,fontSize:36},children:r.pageTitle}),e.jsx("p",{style:{color:"var(--lite, #9aa3a1)",fontSize:12,marginBottom:40},children:r.lastUpdated}),e.jsxs("div",{className:"legal-body",children:[e.jsx(Tt,{title:r.s1Title,children:r.s1Body}),e.jsx(Tt,{title:r.s2Title,children:r.s2Body}),e.jsx(Tt,{title:r.s3Title,children:r.s3Body}),e.jsxs(Tt,{title:r.s4Title,children:[r.s4Intro,r.s4List,r.s4Outro]}),e.jsx(Tt,{title:r.s5Title,children:r.s5Body}),e.jsxs(Tt,{title:r.s6Title,children:[r.s6Intro,r.s6List]}),e.jsxs(Tt,{title:r.s7Title,children:[r.s7Body1,r.s7Body2]}),e.jsx(Tt,{title:r.s8Title,children:r.s8Body}),e.jsx(Tt,{title:r.s9Title,children:r.s9Body}),e.jsx(Tt,{title:r.s10Title,children:r.s10Body}),e.jsx(Tt,{title:r.s11Title,children:r.s11Body}),e.jsx(Tt,{title:r.s12Title,children:r.s12Body}),e.jsx(Tt,{title:r.s13Title,children:r.s13Body})]})]}),e.jsx("style",{children:uj})]})}function Tt({title:t,children:n}){return e.jsxs("section",{style:{marginBottom:32},children:[e.jsx("h2",{style:{fontSize:15,fontWeight:700,color:"var(--ink)",marginBottom:12,letterSpacing:"-.01em"},children:t}),e.jsx("div",{children:n})]})}function Te({children:t}){return e.jsx("p",{style:{fontSize:13.5,lineHeight:1.75,color:"var(--sub)",marginBottom:10},children:t})}function ue({children:t}){return e.jsx("strong",{style:{color:"var(--ink)",fontWeight:600},children:t})}function Wn({children:t}){return e.jsx("ul",{style:{fontSize:13.5,lineHeight:1.75,color:"var(--sub)",marginBottom:10,paddingLeft:20},children:t})}function je({children:t}){return e.jsx("li",{style:{marginBottom:4},children:t})}const uj=` 3412.legal-body a { color: var(--green); text-decoration: none; } 3413.legal-body a:hover { text-decoration: underline; } 3414`,hj={en:{logIn:"Log in",direct:"Live",marches:"Sector watch"},fr:{logIn:"Se connecter",direct:"Live",marches:"Veille sectorielle"}};function Di({active:t=""}){const{lang:n,localizePath:r}=ae(),i=hj[n],[s,a]=m.useState(!1),[o,c]=m.useState(!1),l=Ge(),d=Eb(!0),p=Nb(),u=(l==null?void 0:l.email)||"";return m.useEffect(()=>{document.body.classList.add("np-flush");const g=document.querySelector(".pph"),f=()=>{const v=Math.round((g==null?void 0:g.getBoundingClientRect().height)||60);document.documentElement.style.setProperty("--pp-gap",`${v}px`)};f();const L=g&&typeof ResizeObserver<"u"?new ResizeObserver(f):null;return g&&L&&L.observe(g),window.addEventListener("resize",f),()=>{document.body.classList.remove("np-flush"),L==null||L.disconnect(),window.removeEventListener("resize",f)}},[]),e.jsxs("header",{className:"pph",children:[e.jsx("style",{children:mj}),e.jsxs("div",{className:"in",children:[e.jsx("a",{className:"brand",href:r("/"),"aria-label":"Proplace",children:e.jsx("img",{src:"/logo.png",alt:"Proplace"})}),e.jsxs("nav",{className:"pph-sect","aria-label":"Sections Proplace",children:[e.jsx("a",{className:t==="news"||t==="direct"?"on":"",href:"/actualites/",children:i.direct}),e.jsx("a",{className:t==="marches"?"on":"",href:"/actualites/operations/secteurs/",children:i.marches})]}),e.jsxs("span",{className:"pph-end",children:[e.jsx("span",{className:"pph-auth",children:p?e.jsx(wi,{fundType:p.fund,dealflowHref:ec(p.token,u)}):l?e.jsx(wi,{fundType:l.fund_type,dealflowHref:d&&Cb(d.fund,l.fund_type)?ec(d.token,u):""}):d?e.jsx(wi,{fundType:d.fund,dealflowHref:ec(d.token,u)}):e.jsx("button",{type:"button",className:"cta",onClick:()=>a(!0),children:i.logIn})}),e.jsx(ea,{})]})]}),s&&e.jsx(Ur,{onClose:()=>a(!1),onSignupClick:()=>{a(!1),c(!0)}}),o&&e.jsx(Qr,{onClose:()=>c(!1)})]})}const mj=` 3415.pph{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92); 3416backdrop-filter:saturate(180%) blur(10px);border-bottom:1px solid #E3E8F0; 3417font-family:var(--pp-body)} 3418/* Gabarit IDENTIQUE à la nav de la page d'accueil (.pp-nav-inner : 1200 / 32) â 3419 le bandeau LIVE et le bloc de contenu se calent dessus, donc tout démarre 3420 exactement sous le logo. Miroir Python : PROPLACE_HEADER_CSS. */ 3421.pph .in{max-width:1200px;margin:0 auto;padding:0 32px;min-height:60px;display:flex; 3422align-items:center;gap:14px;flex-wrap:nowrap;min-width:0} 3423.pph .brand{flex:0 0 auto}.pph .brand img{height:24px;display:block} 3424.pph nav,.pph .pph-auth a,.pph .pph-auth button{color:#444;text-decoration:none; 3425white-space:nowrap;background:none;border:none;font:inherit;font-weight:500;cursor:pointer;padding:0} 3426.pph nav>a:hover,.pph .pph-auth button:hover{color:#16233A} 3427.pph .pph-end{flex:0 0 auto;display:inline-flex;align-items:center;gap:10px;margin-left:auto} 3428.pph .pph-auth{flex:0 0 auto;display:inline-flex;align-items:center;white-space:nowrap}
3429/* .pp-acct-btn est listé ici parce que cette page (NewsletterPage) rend SiteHeader 3430 SANS Nav : le CSS .pp-nav-cta de Nav.tsx n'est pas injecté et la pastille 3431 « Connecté » apparaissait nue. Même pastille verte que partout ailleurs. */ 3432.pph a.cta,.pph .pph-auth a.cta,.pph button.cta,.pph .pph-auth button.cta, 3433.pph .pph-auth .pp-acct-btn{color:#fff; 3434background:#12A150;padding:8px 14px;border-radius:9px;font-weight:600} 3435.pph a.cta:hover,.pph button.cta:hover,.pph .pph-auth .pp-acct-btn:hover{background:#0E8A44;color:#fff} 3436/* Les surfaces éditoriales â MÃME grammaire que Nav.tsx et que le header 3437 Python (site_publish.proplace_header_html) : liens sobres collés à la marque, 3438 filet de séparation, souligné vert au survol. */ 3439.pph .pph-sect{display:inline-flex;align-items:center;gap:18px;white-space:nowrap;flex:0 1 auto; 3440min-width:0;padding-left:20px;position:relative; 3441border:0;background:none;border-radius:0;overflow:visible} 3442.pph .pph-sect::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%); 3443width:1px;height:16px;background:rgba(15,29,51,.12)} 3444.pph .pph-sect a{position:relative;padding:6px 0;color:#4B5E78;font-weight:500;font-size:13.5px; 3445letter-spacing:.005em;text-decoration:none;transition:color .2s ease} 3446.pph .pph-sect a::after{content:"";position:absolute;left:0;right:0;bottom:1px;height:1.5px; 3447border-radius:2px;background:#12A150;transform:scaleX(0);transform-origin:left center; 3448transition:transform .22s ease} 3449.pph .pph-sect a:hover{color:#16233A;background:none} 3450.pph .pph-sect a.on{color:#16233A;font-weight:600;background:none} 3451.pph .pph-sect a:hover::after,.pph .pph-sect a.on::after{transform:scaleX(1)} 3452@media(max-width:760px){ 3453 /* Une ligne : Live + Veille glissent, Se connecter + EN|FR restent visibles. */ 3454 .pph .in{display:flex;flex-wrap:nowrap;align-items:center;gap:8px; 3455 padding:0 12px;min-height:48px} 3456 .pph .brand img{height:20px} 3457 .pph .pph-end{flex:0 0 auto;gap:7px;margin-left:0} 3458 .pph .pph-sect{flex:1 1 auto;min-width:0;gap:14px;padding:0 16px 0 10px; 3459 overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch; 3460 scrollbar-width:none; 3461 mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 18px),transparent); 3462 -webkit-mask-image:linear-gradient(90deg,#000 0,#000 calc(100% - 18px),transparent)} 3463 .pph .pph-sect::-webkit-scrollbar{display:none} 3464 .pph .pph-sect::before{height:12px} 3465 .pph .pph-sect a{flex:0 0 auto;padding:6px 0;font-size:13px} 3466 .pph a.cta,.pph .pph-auth a.cta,.pph button.cta,.pph .pph-auth button.cta, 3467 .pph .pph-auth .pp-acct-btn{padding:6px 10px;font-size:12px} 3468 .pph .pp-lang button{padding:4px 8px;font-size:11px} 3469} 3470`,nr=[{id:"b2b-software-and-cloud",label:"B2B Software & Cloud",labelFr:"Logiciels B2B & Cloud",href:"/newsletter/b2b-software-and-cloud/"},{id:"horizontal-and-productivity-saas",label:"Horizontal & Productivity SaaS",labelFr:"SaaS & Productivité",href:"/newsletter/horizontal-and-productivity-saas/"},{id:"future-of-work-and-hr-tech",label:"Future of Work & HR Tech",labelFr:"Futur du Travail & HR Tech",href:"/newsletter/future-of-work-and-hr-tech/"},{id:"developer-and-it-infrastructure",label:"Developer & IT Infrastructure",labelFr:"Infrastructure & Outils Développeurs",href:"/newsletter/developer-and-it-infrastructure/"},{id:"cybersecurity",label:"Cybersecurity",labelFr:"Cybersécurité",href:"/newsletter/cybersecurity/"},{id:"data-and-analytics",label:"Data & Analytics",labelFr:"Data & Analytics",href:"/newsletter/data-and-analytics/"},{id:"fintech",label:"FinTech",labelFr:"FinTech",href:"/newsletter/fintech/"},{id:"insurtech",label:"InsurTech",labelFr:"InsurTech",href:"/newsletter/insurtech/"},{id:"wealthtech-and-asset-management",label:"WealthTech & Asset Management",labelFr:"WealthTech & Gestion d'actifs",href:"/newsletter/wealthtech-and-asset-management/"},{id:"regtech-and-compliance",label:"RegTech & Compliance",labelFr:"RegTech & Conformité",href:"/newsletter/regtech-and-compliance/"},{id:"web3-and-crypto",label:"Web3 & Crypto",labelFr:"Web3 & Crypto",href:"/newsletter/web3-and-crypto/"},{id:"defi-decentralized-finance",label:"DeFi (Decentralized Finance)",labelFr:"DeFi (Finance décentralisée)",href:"/newsletter/defi-decentralized-finance/"}
3470,{id:"web3-infrastructure-and-tooling",label:"Web3 Infrastructure & Tooling",labelFr:"Infrastructure Web3",href:"/newsletter/web3-infrastructure-and-tooling/"},{id:"nfts-and-digital-assets",label:"NFTs & Digital Assets",labelFr:"NFT & Actifs numériques",href:"/newsletter/nfts-and-digital-assets/"},{id:"health-and-wellness",label:"Health & Wellness",labelFr:"Santé & Bien-être",href:"/newsletter/health-and-wellness/"},{id:"healthtech-and-digital-health",label:"HealthTech & Digital Health",labelFr:"HealthTech & Santé numérique",href:"/newsletter/healthtech-and-digital-health/"},{id:"biotech-and-pharma",label:"Biotech & Pharma",labelFr:"Biotech & Pharma",href:"/newsletter/biotech-and-pharma/"},{id:"medtech-and-devices",label:"MedTech & Devices",labelFr:"MedTech & Dispositifs médicaux",href:"/newsletter/medtech-and-devices/"},{id:"commerce-and-consumer",label:"Commerce & Consumer",labelFr:"Commerce & Grande conso",href:"/newsletter/commerce-and-consumer/"},{id:"retail-and-e-commerce-tech",label:"Retail & E-commerce Tech",labelFr:"Retail & E-commerce",href:"/newsletter/retail-and-e-commerce-tech/"},{id:"d2c-and-consumer-brands",label:"D2C & Consumer Brands",labelFr:"D2C & Marques grand public",href:"/newsletter/d2c-and-consumer-brands/"},{id:"social-and-creator-economy",label:"Social & Creator Economy",labelFr:"Réseaux sociaux & Creator Economy",href:"/newsletter/social-and-creator-economy/"},{id:"gaming",label:"Gaming",labelFr:"Gaming / Jeu vidéo",href:"/newsletter/gaming/"},{id:"the-physical-world",label:"The Physical World",labelFr:"Industrie & Monde physique",href:"/newsletter/the-physical-world/"},{id:"climate-and-energy-tech",label:"Climate & Energy Tech",labelFr:"Climat & Ãnergie",href:"/newsletter/climate-and-energy-tech/"},{id:"logistics-and-supply-chain",label:"Logistics & Supply Chain",labelFr:"Logistique & Supply Chain",href:"/newsletter/logistics-and-supply-chain/"},{id:"industrial-tech-and-manufacturing",label:"Industrial Tech & Manufacturing",labelFr:"Industrie & Manufacturing",href:"/newsletter/industrial-tech-and-manufacturing/"},{id:"robotics-and-automation",label:"Robotics & Automation",labelFr:"Robotique & Automatisation",href:"/newsletter/robotics-and-automation/"},{id:"food-and-agtech",label:"Food & AgTech",labelFr:"Food & AgTech",href:"/newsletter/food-and-agtech/"},{id:"construction-and-proptech",label:"Construction & PropTech",labelFr:"Construction & PropTech",href:"/newsletter/construction-and-proptech/"},{id:"mobility-and-transportation",label:"Mobility & Transportation",labelFr:"Mobilité & Transport",href:"/newsletter/mobility-and-transportation/"},{id:"knowledge-and-media",label:"Knowledge & Media",labelFr:"Savoir & Médias",href:"/newsletter/knowledge-and-media/"},{id:"education-and-edtech",label:"Education & EdTech",labelFr:"Ãducation & EdTech",href:"/newsletter/education-and-edtech/"},{id:"media-and-entertainment",label:"Media & Entertainment",labelFr:"Médias & Divertissement",href:"/newsletter/media-and-entertainment/"},{id:"legal-tech",label:"Legal Tech",labelFr:"LegalTech",href:"/newsletter/legal-tech/"},{id:"space-tech",label:"Space Tech",labelFr:"Spatial (Space Tech)",href:"/newsletter/space-tech/"}],as={en:{eyebrow:"THE DAILY NEWSLETTER",h1:"Every deal of the day, read and decoded before you open your inbox.",sub:"M&A and fundraisings in France & Europe â the amounts, the buyers, the press sources. One email a day. Free, one-click unsubscribe.",cta:"Subscribe â",trust:"No card, no commitment â one click to leave.",getTitle:"What lands in your inbox",get:[["ð¤","Every signed deal","Who bought whom, for how much, in which market â with the press source behind each line."],["ð","Every fundraising","Rounds in France & Europe, the amount, the stage and the investors, the day they are announced."],["ð¤","Appointments & hirings","The moves that say a company is about to change scale, before the deal shows up."],["ð","The day in figures","Volume, amounts, the markets that moved â the same count as the site, never a different one."]],edTitle:"Today's edition",edSub:"This is exactly what subscribers received â the count comes from the published edition, live.",edRead:"Read the full edition â",secTitle:"Or only your market",secSub
3470:"One newsletter per market, same daily rhythm â the deals of that sector and nothing else.",faqTitle:"The practical details",faq:[["How often?","Once a day. Never a second email, never a âspecial offerâ."],["How much?","Free. The newsletter is the public face of the deal flow we screen for our clients."],["Leaving?","One click at the bottom of any email. No form, no question asked."],["Your address?","Kept for sending the newsletter, nothing else â never sold, never passed on."]],back:"â Back to proplace.co",seoT:"Proplace Newsletter â Daily deal flow & M&A signals",seoD:"Subscribe to the Proplace newsletter: every M&A deal and fundraising of the day in France & Europe, with amounts, buyers and press sources. Free, one email a day."},fr:{eyebrow:"LA NEWSLETTER QUOTIDIENNE",h1:"Toutes les opérations du jour, lues et décryptées avant que vous nâouvriez votre boîte mail.",sub:"M&A et levées de fonds en France & Europe â les montants, les acquéreurs, les sources presse. Un email par jour. Gratuit, désinscription en un clic.",cta:"Sâabonner â",trust:"Sans carte, sans engagement â un clic pour partir.",getTitle:"Ce que vous recevez",get:[["ð¤","Chaque opération signée","Qui rachète qui, pour combien, sur quel marché â avec la source presse derrière chaque ligne."],["ð","Chaque levée de fonds","Les tours en France & Europe, le montant, le stade et les investisseurs, le jour où ils sont annoncés."],["ð¤","Nominations et recrutements","Les mouvements qui annoncent un changement dâéchelle, avant que lâopération nâarrive."],["ð","La journée en chiffres","Volume, montants, marchés qui bougent â le même décompte que le site, jamais un autre."]],edTitle:"Lâédition dâaujourdâhui",edSub:"Câest exactement ce que les abonnés ont reçu â le décompte vient de lâédition publiée, en direct.",edRead:"Lire lâédition complète â",secTitle:"Ou seulement votre marché",secSub:"Une newsletter par marché, au même rythme quotidien â les opérations de ce secteur, et rien dâautre.",faqTitle:"En pratique",faq:[["à quelle fréquence ?","Une fois par jour. Jamais un second email, jamais dâ« offre spéciale »."],["à quel prix ?","Gratuit. La newsletter est la face publique du deal flow que nous criblons pour nos clients."],["Pour partir ?","Un clic en bas de nâimporte quel email. Pas de formulaire, pas de question."],["Votre adresse ?","Conservée pour lâenvoi, rien dâautre â jamais vendue, jamais transmise."]],back:"â Retour sur proplace.co",seoT:"Newsletter Proplace â Deal flow et signaux M&A",seoD:"Abonnez-vous à la newsletter Proplace : toutes les opérations M&A et levées de fonds du jour en France & Europe, avec montants, acquéreurs et sources presse. Gratuit, un email par jour."}};function m1(){const{lang:t}=ae(),n=as[t],[r,i]=m.useState(""),[s,a]=m.useState(""),{state:o,errMsg:c,submit:l,copy:d}=fl("general");return ht({en:{title:as.en.seoT,description:as.en.seoD},fr:{title:as.fr.seoT,description:as.fr.seoD}}),m.useEffect(()=>(document.body.classList.add("np-flush"),()=>document.body.classList.remove("np-flush")),[]),e.jsxs("div",{className:"ppnl",children:[e.jsx("style",{children:gj}),e.jsx(Di,{}),e.jsx("div",{className:"ppnl-wrap",children:e.jsxs("section",{className:"ppnl-hero",children:[e.jsx("span",{className:"ppnl-eyebrow",children:n.eyebrow}),e.jsx("h1",{children:n.h1}),e.jsx("p",{className:"ppnl-sub",children:n.sub}),e.jsxs("form",{className:"ppnl-form",noValidate:!0,onSubmit:async p=>{p.preventDefault(),await l(r,s)&&i("")},children:[e.jsx("input",{type:"email",required:!0,value:r,placeholder:d.placeholder,"aria-label":d.placeholder,onChange:p=>i(p.target.value)}),e.jsx("input",{type:"text",name:"website",value:s,tabIndex:-1,autoComplete:"off","aria-hidden":"true",className:"ppnl-hp",onChange:p=>a(p.target.value)}),e.jsx("button",{type:"submit",disabled:o==="sending",children:o==="sending"?d.sending:n.cta})]}),e.jsx("p",{className:"ppnl-msg"+(o==="err"?" err":""),"aria-live":"polite",children:o==="ok"?d.ok:o==="err"?c:n.trust}),e.jsx("ul",{className:"ppnl-points",children:n.get.map(([p,u,g])=>e.jsxs("li",{children:[p," ",u," â ",g]},u))})]})}),e.jsx("div",{className:"ppnl-wrap",children:e.jsxs("section",{className:"ppnl-sec ppnl-last",children:[e.jsx("h2",{children:n.secTitle}),e.jsx("p",{className:"ppnl-lead",children:n.secSub}),e.jsx("div",{className:"ppnl-secs",children:nr.map(p=>e.jsx("a",{className:"ppnl-pill",href:p.href,children:t==="fr"?p.labelFr:p.label},p.id))})]})}),e.jsx(Nt,{})]})}const gj=` 3471.ppnl{font-family:var(--pp-body); 3472color:#16233A;background:#fff;min-height:100vh;display:flex;flex-direction:column} 3473.ppnl .ppf{margin-top:auto} 3474.ppnl .ppnl-wrap{max-width:1200px;margin:0 auto;padding:0 32px} 3475 3476/* ââ le bloc d'encre : copie conforme de .ppd-nl (bas de /actualites) âââââ */ 3477.ppnl-hero{margin:44px 0 0;background:linear-gradient(175deg,#0F1D33 0%,#0F1D33 100%); 3478padding:clamp(46px,5vw,74px) clamp(26px,3.6vw,58px);text-align:center;border-radius:22px; 3479box-shadow:0 30px 72px -44px rgba(15,29,51,.85)} 3480.ppnl-eyebrow{display:block;font-family:var(--pp-body);font-size:12px;color:#5FD39B;margin:0 0 20px;font-weight:600;font-variant-numeric:tabular-nums} 3481.ppnl-hero h1{margin:0 auto;max-width:22ch;color:#fff;font-size:clamp(30px,3.8vw,48px);
3482font-weight:700;letter-spacing:-.042em;line-height:1.08;text-wrap:balance} 3483.ppnl-sub{max-width:60ch;margin:20px auto 0;color:#A7B6CC;font-size:clamp(15px,1.2vw,17.5px); 3484line-height:1.6} 3485.ppnl-form{display:flex;gap:0;justify-content:center;flex-wrap:wrap;margin:32px auto 0;max-width:620px} 3486.ppnl-form input[type=email]{flex:0 1 360px;min-width:220px;height:56px;padding:0 18px; 3487font-family:inherit;font-size:15.5px;color:#0F1D33;background:#fff;border:1px solid #24344C; 3488border-radius:10px 0 0 10px;outline:none} 3489.ppnl-form input[type=email]:focus{border-color:#12A150;box-shadow:0 0 0 3px rgba(18,161,80,.28)} 3490.ppnl-form input[type=email]::placeholder{color:#7C8CA0} 3491.ppnl-hp{position:absolute;left:-9999px;height:0;width:0;border:0;padding:0} 3492.ppnl-form button{height:56px;padding:0 30px;border:0;border-radius:0 10px 10px 0;cursor:pointer; 3493background:#12A150;color:#fff;font-family:inherit;font-size:15.5px;font-weight:700; 3494letter-spacing:-.01em;line-height:1; 3495box-shadow:0 2px 4px rgba(18,161,80,.20),0 14px 28px -16px rgba(18,161,80,.75); 3496transition:background .18s,transform .18s} 3497.ppnl-form button:hover{background:#0E8A44;transform:translateY(-1px)} 3498.ppnl-form button[disabled]{opacity:.62;cursor:default;transform:none} 3499.ppnl-msg{min-height:22px;margin:16px 0 0;font-size:14.5px;color:#7C93AB} 3500.ppnl-msg.err{color:#F5C6C8} 3501 3502/* ce que vous recevez â copie de .nlbox .nlp-points (pages sectorielles) */ 3503.ppnl-points{display:grid;grid-template-columns:1fr 1fr;gap:10px 30px; 3504margin:30px auto 0;max-width:820px;padding:0;list-style:none;text-align:left} 3505.ppnl-points li{margin:0;color:#C5D4E3;font-size:14.5px;line-height:1.5} 3506 3507/* ââ les sections claires âââââââââââââââââââââââââââââââââââââââââââââââââ */ 3508.ppnl-sec{padding:64px 0 0} 3509.ppnl-last{padding-bottom:88px} 3510.ppnl-sec h2{margin:0;font-size:clamp(22px,2.4vw,30px);font-weight:700;letter-spacing:-.035em; 3511line-height:1.15;max-width:32ch} 3512.ppnl-lead{margin:12px 0 0;font-size:16px;line-height:1.6;color:#4B5E78;max-width:66ch} 3513 3514/* l'édition du jour â la seule zone qui porte des chiffres, et ils sont réels */ 3515.ppnl-edbox{margin-top:22px;border:1px solid #E3E8F0;border-radius:18px;background:#F9FBFD; 3516padding:24px 26px;display:flex;align-items:center;gap:16px 24px;flex-wrap:wrap} 3517.ppnl-eddate{font-family:var(--pp-body);font-size:12px;color:#8FA0B8;flex:0 0 auto;font-weight:600;font-variant-numeric:tabular-nums} 3518.ppnl-edmh{flex:1 1 auto;min-width:220px;font-size:17px;font-weight:600;letter-spacing:-.02em; 3519color:#16233A;font-variant-numeric:tabular-nums} 3520.ppnl-edgo{flex:0 0 auto;font-size:14px;font-weight:600;color:#0E8A44;text-decoration:none} 3521.ppnl-edgo:hover{text-decoration:underline} 3522 3523/* les 36 marchés â des pastilles, pas une liste à puces */ 3524.ppnl-secs{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px} 3525.ppnl-pill{display:inline-block;border:1px solid #E3E8F0;border-radius:999px;padding:8px 15px; 3526font-size:13.5px;color:#0F1D33;text-decoration:none;background:#fff; 3527transition:border-color .14s ease,color .14s ease,background .14s ease} 3528.ppnl-pill:hover{border-color:#12A150;color:#0E8A44;background:#E7F6EE} 3529 3530/* en pratique */ 3531.ppnl-faq{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px 36px; 3532margin:26px 0 0} 3533.ppnl-faq dt{font-size:14.5px;font-weight:700;color:#16233A;letter-spacing:-.015em} 3534.ppnl-faq dd{margin:6px 0 0;font-size:14.5px;line-height:1.55;color:#4B5E78} 3535.ppnl-back{margin:40px 0 0;font-size:14px} 3536.ppnl-back a{color:#0E8A44;text-decoration:none} 3537.ppnl-back a:hover{text-decoration:underline} 3538 3539@media(max-width:760px){ 3540 .ppnl .ppnl-wrap{padding:0 18px} 3541 .ppnl-hero{margin-top:26px;border-radius:18px} 3542 .ppnl-sec{padding-top:46px} 3543 .ppnl-last{padding-bottom:60px} 3544 .ppnl-form input[type=email]{flex:1 1 100%;border-radius:10px 10px 0 0} 3545 .ppnl-form button{flex:1 1 100%;border-radius:0 0 10px 10px} 3546 .ppnl-points{grid-template-columns:1fr;max-width:440px} 3547} 3548@media (prefers-reduced-motion:reduce){ 3549 .ppnl *{transition:none!important} 3550} 3551`,im={fr:{title:"Le carnet de bord de Stan",sub:"Tout ce qui a fait bouger votre paramétrage â daté, avec le détail exact de ce qui a changé.",empty:"Rien nâa encore bougé. Chaque correction que vous ferez, et chaque passe automatique de la nuit, sâinscrira ici.",loading:"Lecture du carnetâ¦",more:"Voir tout le détail",less:"Replier",today:"aujourdâhui",yesterday:"hier",sources:{popup:"Votre correction, à lâinscription",cockpit:"Vous, depuis le cockpit",edition:"Votre correction",autofix:"Mise au format automatique",evolution:"Révision hebdomadaire de Stan",veille:"Vos sources de veille",restore:"Restauration dâune version",creation:"Création de votre thèse",compte:"Votre correction, depuis votre compte","daily-email":"Vous, depuis lâemail du matin","chat-sourced":"Vous, depuis le chat","chat-qualified":"Vous, depuis le chat",worldmap:"Vous, depuis le cockpit"},kinds:{pouce:"Votre avis",note:"Votre note",these:"Paramétrage",veille:"Veille"}},en:{title:"Stanâs logbook",sub:"Everything that changed your setup â dated, with exactly what moved.",empty:"Nothing has moved yet. Every correction you make, and every nightly pass, will be recorded here.",loading:"Reading the logbookâ¦",more:"See the full detail",less:"Collapse",today:"today",yesterday:"yesterday",sources:{popup:"Your correction, at signup",cockpit:"You, from the cockpit",edition:"Your correction",autofix:"Automatic formatting pass",evolution:"Stanâs weekly revision",veille:"Your monitoring sources",restore:"Version restored",creation:"Your thesis was created",compte:"Your correction, from your account","daily-email":"You, from the morning email","chat-sourced":"You, from the chat","chat-qualified":"You, from the chat",worldmap:"You, from the cockpit"},kinds:{pouce:"Your call",note:"Your note",these:"Setup",veille:"Monitoring"}}};function fj(t,n,r){if(!t)return"";const i=new Date(t*1e3),s=new Date,a=l=>`${l.getFullYear()}-${l.getMonth()}-${l.getDate()}`,o=i.toLocaleTimeString(n==="fr"?"fr-FR":"en-GB",{hour:"2-digit",minute:"2-digit"});if(a(i)===a(s))return`${r.today} · ${o}`;const c=new Date(s.getTime()-864e5);return a(i)===a(c)?`${r.yesterday} · ${o}`:`${i.toLocaleDateString(n==="fr"?"fr-FR":"en-GB",{day:"numeric",month:"short"})} · ${o}`}function xj({fund:t,lang:n="fr",limit:r=40,compact:i=!1}){const s=im[n]||im.fr,[a,o]=m.useState(null),[c,l]=m.useState({});return m.useEffect(()=>{let d=!0;if(!t){o([]);return}return(async()=>{try{const u=await(await fetch(`${_e}/stan/journal?fund=${encodeURIComponent(t)}&limit=${r}`)).json();d&&o(Array.isArray(u==null?void 0:u.events)?u.events:[])}catch{d&&o([])}})(),()=>{d=!1}},[t,r]),e.jsxs("div",{className:`pp-sj${i?" compact":""}`,children:[e.jsx("style",{children:Lj}),e.jsx("p",{className:"pp-sj-h",children:s.title}),e.jsx("p",{className:"pp-sj-sub",children:s.sub}),a===null?e.jsx("p",{className:"pp-sj-empty",children:s.loading}):a.length===0?e.jsx("p",{className:"pp-sj-empty",children:s.empty}):e.jsx("ol",{className:"pp-sj-list",children:a.map((d,p)=>{const u=d.lines||[],g=!!c[p],f=g?u:u.slice(0,2),L=d.source==="autofix"||d.source==="veille",v=d.source==="evolution";return e.jsxs("li",{className:`pp-sj-ev${L?" auto":""}${v?" majeur":""}`,children:[e.jsx("span",{className:"pp-sj-dot","aria-hidden":!0}),e.jsxs("div",{className:"pp-sj-body",children:[e.jsxs("p",{className:"pp-sj-meta",children:[e.jsx("span",{className:"pp-sj-when",children:fj(d.ts,n,s)}),e.jsx("span",{className:"pp-sj-src",children:s.sources[d.source]||d.source}),!!s.kinds[d.kind]&&d.kind!=="these"&&e.jsx("span",{className:"pp-sj-tag",children:s.kinds[d.kind]})]}),d.summary&&e.jsx("p",{className:"pp-sj-sum",children:d.summary}),!!f.length&&e.jsx("ul",{className:"pp-sj-diff",children:f.map(y=>e.jsx("li",{children:y},y))}),u.length>2&&e.jsx("button",{type:"button",className:"pp-sj-more",onClick:()=>l(y=>({...y,[p]:!y[p]})),children:g?s.less:`${s.more} (${u.length})`})]})]},`${d.ts}-${p}`)})})]})}const Lj=` 3552.pp-sj { font-family: var(--pp-body); } 3553.pp-sj-h { margin: 0 0 4px; font-size: 15px; font-weight: 700; color: #0F1D33; } 3554.pp-sj-sub { margin: 0 0 16px; font-size: 12.5px; line-height: 1.5; color: #4B5E78; } 3555.pp-sj-empty { 3556 margin: 0; padding: 14px 16px; border-radius: 10px; 3557 background: #F9FBFD; border: 1px dashed #C9D4E2; 3558 font-size: 12.5px; line-height: 1.55; color: #4B5E78; 3559} 3560.pp-sj-list { 3561 list-style: none; margin: 0; padding: 0 0 0 6px; 3562 border-left: 2px solid #E3E8F0; margin-left: 6px; 3563} 3564.pp-sj-ev { position: relative; padding: 0 0 16px 20px; } 3565.pp-sj.compact .pp-sj-ev { padding-bottom: 12px; } 3566.pp-sj-ev:last-child { padding-bottom: 2px; } 3567.pp-sj-dot { 3568 position: absolute; left: -1px; top: 6px; 3569 width: 7px; height: 7px; border-radius: 999px; 3570 background: #12A150; border: 2px solid #12A150; box-sizing: border-box; 3571} 3572/* Une passe AUTOMATIQUE se distingue d'une décision humaine : le dirigeant doit 3573 voir d'un coup d'Åil ce qu'il a décidé lui-même. */ 3574.pp-sj-ev.auto .pp-sj-dot { background: #fff; border-color: #8FA0B8; }
3575/* La révision hebdomadaire est automatique MAIS stratégique : elle ne doit pas 3576 se noyer parmi les reformatages. */ 3577.pp-sj-ev.majeur .pp-sj-dot { background: #E0A81E; border-color: #E0A81E; } 3578.pp-sj-ev.majeur .pp-sj-src { color: #96690E; } 3579.pp-sj-body { min-width: 0; } 3580.pp-sj-meta { display: flex; flex-wrap: wrap; align-items: baseline; gap: 8px; margin: 0 0 3px; } 3581.pp-sj-when { 3582 font-family: var(--pp-body); 3583 font-size: 11px; font-variant-numeric: tabular-nums; color: #8FA0B8; 3584} 3585.pp-sj-src { font-size: 12.5px; font-weight: 700; color: #0F1D33; } 3586.pp-sj-ev.auto .pp-sj-src { color: #4B5E78; font-weight: 600; } 3587.pp-sj-tag { 3588 font-size:12px; font-weight:600; 3589 color: #0E7F3F; background: #EAF6EF; border-radius: 999px; padding: 2px 8px; 3590} 3591.pp-sj-sum { margin: 0 0 5px; font-size: 13px; line-height: 1.5; color: #16233A; overflow-wrap: anywhere; } 3592.pp-sj-diff { list-style: none; margin: 4px 0 0; padding: 0; display: flex; flex-direction: column; gap: 4px; } 3593.pp-sj-diff li { 3594 position: relative; padding: 6px 10px 6px 22px; border-radius: 8px; 3595 background: #F9FBFD; font-size: 12.5px; line-height: 1.5; color: #4B5E78; 3596 overflow-wrap: anywhere; 3597} 3598.pp-sj-diff li::before { 3599 content: "â"; position: absolute; left: 9px; top: 6px; color: #12A150; font-weight: 700; 3600} 3601.pp-sj-more { 3602 margin-top: 6px; padding: 0; background: none; border: 0; cursor: pointer; 3603 font-family: inherit; font-size: 12px; font-weight: 600; color: #0E7F3F; 3604 text-decoration: underline; text-underline-offset: 2px; 3605} 3606`,sm=t=>(Array.isArray(t)?t:[]).map(n=>String(n??"").trim()).filter(Boolean);function vj(t){if(!t||typeof t!="object"||Array.isArray(t))return null;const n=t,r=sm(n.chips),i=sm(n.more);return!r.length&&!i.length?null:{chips:r,more:i,note:typeof n.note=="string"?n.note.trim():"",shared:!!n.shared,example:!!n.example}}function am(t,n){const r=(t||{})[n]??(t||{})[`${n}_engine`];return vj(r)}function Bw(t,n=8){return t?[...t.chips,...t.more].slice(0,n).join(" · "):""}const bj=[{label:"⨠Diagnostiquer",ask:"Diagnostiquer ma thèse",instruction:"Diagnostique ma thèse à partir de mes résultats récents. Propose les 3 corrections les plus utiles, en langage clair, prêtes à appliquer."},{label:"â Société de référence",ask:"Ajouter une société de référence",instruction:"Propose-moi LE meilleur gold anchor à ajouter ou changer pour l'angle qui en a le plus besoin. Société concrète, une phrase de pourquoi."},{label:"â Concurrent",ask:"Ajouter un concurrent",instruction:"Propose une société de référence pertinente à ajouter aux competitor_anchors de l'angle le plus adapté."},{label:"â Secteur",ask:"Ajouter un secteur",instruction:"Propose un mot-clé sectoriel concret à ajouter aux sectors_plain de l'angle le plus adapté."},{label:"ð Exclure",ask:"Ajouter une exclusion",instruction:"Propose UNE clause d'exclusion (reject_signal, â¤8 mots) pour couper un bruit récurrent."},{label:"âï¸ Simplifier",ask:"Simplifier la thèse",instruction:"Identifie LA clause trop large qui me fait rater des deals, et propose de la retirer."},{label:"â Nouvel angle",ask:"Ajouter un angle",instruction:"Propose un nouvel angle complet et cohérent avec ma thèse. Explique en 2 phrases avant les opérations."}];function yj(t){var s,a,o,c;if(!t)return[];const n=new Set([...Object.keys(t.engines||{}),...Object.keys(t.params||{}).map(l=>l.replace(/_engine$/,""))]),r=new Set,i=[];for(const l of n){const d=l.replace(/_engine$/,"");if(!d||r.has(d))continue;r.add(d);const p=am(t.params,d)||am(t.params,l),u=Number(((c=(o=((s=t.engines)==null?void 0:s[l])||((a=t.engines)==null?void 0:a[d]))==null?void 0:o.summary)==null?void 0:c.sourced)||0);i.push({key:d,sourced:u,chips:p==null?void 0:p.chips,more:p==null?void 0:p.more,note:p==null?void 0:p.note})}return i.sort((l,d)=>(d.sourced||0)-(l.sourced||0)),i}function jj(t,n){if(!t)return"";const r=new Date(t);return Number.isNaN(r.getTime())?t.slice(0,10):r.toLocaleDateString(n?"fr-FR":"en-GB",{day:"numeric",month:"short"})}function wj({fund:t,email:n,fr:r}){const[i,s]=m.useState(null),[a,o]=m.useState(""),[c,l]=m.useState(""),[d,p]=m.useState(""),[u,g]=m.useState(""),[f,L]=m.useState(!1),[v,y]=m.useState(""),[h,b]=m.useState(""),[x,A]=m.useState([]),[w,S]=m.useState(!1),[E,j]=m.useState([]),[O,k]=m.useState({yes:0,no:0}),[_,N]=m.useState(null),[I,ce]=m.useState(!1),[K,pe]=m.useState([]),ee=m.useRef(null);m.useEffect(()=>()=>{ee.current&&window.clearInterval(ee.current)},[]),m.useEffect(()=>{let M=!0;return o(""),kh(t).then(re=>
3606{if(M){if(!re){o(r?"Impossible de lire ce fonds.":"Could not load this fund.");return}s(re),l(re.email_lead||""),p((re.lang||"").toLowerCase().startsWith("en")?"en":re.lang?"fr":""),g(re.logo_url||"")}}),I2(t).then(re=>{M&&(j(re.thumbs),k(re.counts))}),ce(!1),F2(t).then(re=>{M&&(N(re),ce(!0))}),O2(t).then(re=>{M&&pe(yj(re))}),()=>{M=!1}},[t,r]);async function P(){if(f)return;L(!0),y("");const M=await P2(n,t,{email_lead:c.trim(),lang:d||"fr",logo_url:u.trim()});L(!1),y(M.ok?r?"â Logo, email et langue enregistrés.":"â Logo, email and language saved.":M.error||(r?"Enregistrement refusé.":"Save refused."))}async function D(M,re){const H=M.trim();if(!(!H||w)){S(!0),A(se=>[...se,{who:"you",text:re||H}]),b("");try{const se=await D2(n,t,H);if(!se.job_id){se.reply&&A(he=>[...he,{who:"stan",text:se.reply}]),S(!1);return}A(he=>[...he,{who:"stan",text:r?"Stan lit vos résultats et prépare une proposition â quelques minutes. Rien nâest écrit tant que vous nâacceptez pas.":"Stan is reading your results and drafting a proposal â a few minutes. Nothing is written until you accept."}]);const ie=se.job_id;ee.current&&window.clearInterval(ee.current),ee.current=window.setInterval(async()=>{const he=await Sp(ie);if(!he.done)return;ee.current&&window.clearInterval(ee.current),ee.current=null;const Le=he.clarification||he.reply||"";if(Le&&A(xe=>[...xe,{who:"stan",text:Le}]),he.applied){A(oe=>[...oe,{who:"done",text:r?"â Thèse mise à jour. Le sourcing de demain la lira.":"â Thesis updated. Tomorrowâs sourcing will read it."}]);const xe=await kh(t);xe&&s(xe)}S(!1)},6e3)}catch(se){A(ie=>[...ie,{who:"stan",text:se instanceof Error?se.message:String(se)}]),S(!1)}}}return e.jsxs("div",{className:"ppc-thesis-pilot",children:[a&&e.jsx("p",{className:"ppc-flash",style:{background:"#fdf3f3",color:"#9b1c1c"},children:a}),e.jsx("h3",{className:"ppc-h3",children:r?"Identité du fonds":"Fund identity"}),e.jsx("p",{className:"ppc-sub",style:{marginTop:0},children:r?"Affichés dans le header du chat client et les emails.":"Shown in the client chat header and emails."}),e.jsxs("div",{className:"ppc-idform",children:[e.jsxs("label",{className:"ppc-cofield",children:[e.jsx("span",{children:r?"Email du fonds (alertes + login)":"Fund email (alerts + login)"}),e.jsx("input",{type:"email",value:c,onChange:M=>l(M.target.value),placeholder:"[email protected]"})]}),e.jsxs("label",{className:"ppc-cofield",children:[e.jsx("span",{children:r?"Langue des emails et du chat client":"Language of emails and client chat"}),e.jsxs("select",{value:d,onChange:M=>p(M.target.value),children:[e.jsx("option",{value:"",children:r?"â Choisir â":"â Choose â"}),e.jsx("option",{value:"fr",children:"Français"}),e.jsx("option",{value:"en",children:"English"})]})]}),e.jsxs("label",{className:"ppc-cofield",style:{maxWidth:"100%"},children:[e.jsx("span",{children:"Logo (URL)"}),e.jsx("input",{type:"url",value:u,onChange:M=>g(M.target.value),placeholder:"https://â¦"})]}),u.trim().startsWith("http")&&e.jsx("img",{className:"ppc-logo-prev",src:u.trim(),alt:""}),e.jsx("button",{type:"button",className:"ppc-cta sm",disabled:f,onClick:()=>void P(),children:f?r?"Enregistrementâ¦":"Savingâ¦":r?"Enregistrer logo, email, langue":"Save logo, email, language"}),v&&e.jsx("p",{className:"ppc-flash",children:v})]}),e.jsx("h3",{className:"ppc-h3",children:r?"Votre thèse, telle que Stan la lit":"Your thesis, as Stan reads it"}),e.jsx("p",{className:"ppc-sub",style:{marginTop:0},children:r?"Hypothèse, angles, crible. Câest le même texte que dans lâaperçu du cockpit. Si câest faux, corrigez-le ci-dessous : le sourcing de demain suivra.":"Hypothesis, angles, screen. Same text as in the cockpit preview. If it is off, correct it below: tomorrowâs sourcing will follow."}),I?_&&(_.lead||_.angles&&_.angles.length)?e.jsx("div",{className:"ppc-these-cockpit",children:e.jsx(ll,{criteria:_,lang:r?"fr":"en",engines:K,memo:vx(i==null?void 0:i.thesis,r)})}):e.jsx("p",{className:"ppc-sub",children:r?"La thèse nâest pas encore publiée sur votre page cibles.":"The thesis is not published on your targets page yet."}):e.jsxs("div",{className:"ppc-these-load","aria-busy":"true",children:[e.jsx("span",{className:"ppc-these-bar"}),e.jsx("p",{children:r?"Chargement de votre thèseâ¦":"Loading your thesisâ¦"})]}),e.jsxs("div",{className:"ppc-thumbs-table",id:"ppc-thumbs",children:[e.jsx("h3",{className:"ppc-h3",children:r?"Vos pouces â ce qui apprend à Stan":"Your thumbs â what teaches Stan"}),e.jsx("p",{className:"ppc-sub",style:{marginTop:0},children:r?"Chaque ð ou ð sur une société affine la thèse. Câest le même journal que dans le cockpit.":"Eac
3606h ð or ð on a company steers the thesis. Same journal as in the cockpit."}),e.jsxs("p",{className:"ppc-these-ang",children:["ð ",O.yes," · ð ",O.no]}),E.length===0?e.jsx("p",{className:"ppc-sub",children:r?"Aucun pouce pour lâinstant. Dans vos cibles, ð/ð sur une ligne sâinscrit ici.":"No thumbs yet. In your targets, ð/ð on a row will show up here."}):e.jsxs("table",{className:"ppc-thumbs",children:[e.jsx("thead",{children:e.jsxs("tr",{children:[e.jsx("th",{children:r?"Société":"Company"}),e.jsx("th",{children:r?"Avis":"Call"}),e.jsx("th",{children:"Date"}),e.jsx("th",{children:"Note"})]})}),e.jsx("tbody",{children:E.slice(0,40).map((M,re)=>e.jsxs("tr",{children:[e.jsx("td",{children:M.company||"â"}),e.jsx("td",{children:M.kind==="YES"?"ð":"ð"}),e.jsx("td",{children:jj(M.ts,r)}),e.jsx("td",{children:M.note||""})]},`${M.company}-${M.ts}-${re}`))})]})]}),e.jsx("h3",{className:"ppc-h3",children:r?"Corriger la thèse":"Edit the thesis"}),e.jsx("p",{className:"ppc-sub",style:{marginTop:0,maxWidth:"72ch"},children:r?"Dites ce qui cloche (un secteur à écarter, une société de référence, un angle trop large). Stan propose une correction. Rien nâest enregistré en base de données tant que vous ne validez pas. Le lendemain, le crible lit la nouvelle version.":"Say what is off (a sector to drop, a reference company, an angle that is too wide). Stan proposes an edit. Nothing is saved to the database until you accept. The next day the screen reads the new version."}),e.jsx("div",{className:"ppc-chips",children:bj.map(M=>e.jsx("button",{type:"button",className:"ppc-chip",disabled:w,title:r?`Ouvre le chat : ${M.ask}`:`Opens chat: ${M.ask}`,onClick:()=>void D(M.instruction,M.ask),children:M.label},M.label))}),e.jsxs("div",{className:"ppc-chat",children:[x.length===0&&!w&&e.jsx("p",{className:"ppc-chat-empty",children:r?"Exemple : « écarter les mutuelles 100 % France » ou cliquez un bouton ci-dessus. Stan répond ici, avec une proposition à valider.":"Example: âdrop purely domestic mutualsâ or click a button above. Stan replies here, with a proposal to accept."}),x.map((M,re)=>e.jsx("div",{className:`ppc-bubble ${M.who}`,children:M.text},re)),w&&e.jsx("p",{className:"ppc-sub",children:r?"Stan prépare une propositionâ¦":"Stan is drafting a proposalâ¦"})]}),e.jsxs("form",{className:"ppc-composer",onSubmit:M=>{M.preventDefault(),D(h)},children:[e.jsx("textarea",{rows:3,value:h,onChange:M=>b(M.target.value),placeholder:r?"Ou écrivez ici, en langage naturel : « écarter les mutuelles françaises »â¦":"Or write here, in plain languageâ¦",onKeyDown:M=>{M.key==="Enter"&&(M.ctrlKey||M.metaKey)&&(M.preventDefault(),D(h))}}),e.jsx("button",{type:"submit",className:"ppc-cta sm",disabled:w||h.trim().length<6,children:r?"Envoyer à Stan":"Send to Stan"})]})]})}const om={fr:{badge:"Essai gratuit · 14 jours",title:"Découvrez vos premières cibles",lead:t=>`Stan a tiré de votre mémo la stratégie de croissance externe de ${t}. Relisez-la, corrigez-la si besoin, puis lancez la recherche : chaque société de votre marché sera confrontée à votre thèse â retenue, ou écartée avec sa raison.`,steps:["Le mémo de votre société","Votre stratégie, à relire","Vos cibles, en 30 à 60 min"],exTitle:"Ce que vous recevrez",exTag:"exemple",exRows:[{ok:!0,name:"Société A",why:"coche vos critères â angle 1"},{ok:!1,name:"Société B",why:"écartée â hors de votre fourchette de taille"}
3606,{ok:!0,name:"Société C",why:"coche vos critères â angle 2"}],readK:"Ce que Stan a compris de vous",jump:"Aller au lancement â",loading:"Nous ouvrons votre stratégieâ¦",deriving:"Votre mémo se termine : Stan met votre stratégie au propre. Cet écran se met à jour tout seul.",expired:"Pour lancer la recherche, confirmez votre email â un code, dix secondes.",expiredBtn:"Confirmer mon email â",error:"Votre stratégie ne sâaffiche pas pour lâinstant. Réessayez dans un instant, ou parlons-en.",retry:"Réessayer",fixK:"Corrigez ce qui est à côté",optional:"facultatif",chips:[{label:"Lâhypothèse",seed:"Votre hypothèse est à côté : en réalité, "},{label:"Les angles",seed:"Sur les angles : "},{label:"La taille",seed:"Côté taille des cibles : "},{label:"La zone",seed:"Côté zone géographique : "}],fixPh:"Ãcrivez-le comme vous le diriez à votre équipe â Stan se recalibre dessus.",fixPhAnswer:"Répondez à Stan ici â (a), (b), ou vos mots.",fixSubmit:"Mettre à jour ma stratégie â",fixSending:"Stan recalibre votre stratégieâ¦",fixApplied:"Correction appliquée â votre stratégie est à jour, à gauche.",updated:"â Mise à jour à lâinstant",you:"Vous",goK:"Lancez la recherche",gets:["Votre page de cibles privée, remise à jour chaque matin","Chaque société jugée sur votre thèse, avec la raison écrite en clair","Vos angles corrigés à tout moment, en langage naturel","Un appel dâAlexandre pour les caler de vive voix"],phoneLabel:"Votre téléphone",phonePh:"+33 6 12 34 56 78",phoneHint:"Pour vous remettre vos cibles et caler vos angles de vive voix.",launch:"Lancer la recherche de mes cibles â",launching:"Lancementâ¦",after:"Stan passe votre marché au crible : vos cibles retenues arrivent sous 30 à 60 minutes, sur cette page et par e-mail.",nudge:"Il nous faut un numéro pour vous remettre vos cibles â ou réservez un appel juste en dessous.",rdv:"Vous préférez en parler ? Réservez 20 minutes avec Alexandre"},en:{badge:"Free trial · 14 days",title:"Discover your first targets",lead:t=>`Stan drew ${t}'s external growth strategy from your memo. Review it, correct it if needed, then launch the search: every company in your market will be checked against your thesis â kept, or ruled out with its reason.`,steps:["Your company memo","Your strategy, to review","Your targets, in 30 to 60 min"],exTitle:"What you will get",exTag:"example",exRows:[{ok:!0,name:"Company A",why:"meets your criteria â angle 1"},{ok:!1,name:"Company B",why:"ruled out â outside your size range"},{ok:!0,name:"Company C",why:"meets your criteria â angle 2"}],readK:"What Stan understood about you",jump:"Go to launch â",loading:"Opening your strategyâ¦",deriving:"Your memo is finishing: Stan is writing up your strategy. This screen updates on its own.",expired:"To launch the search, confirm your email â one code, ten seconds.",expiredBtn:"Confirm my email â",error:"Your strategy cannot be displayed right now. Try again in a moment, or letâs talk.",retry:"Retry",fixK:"Correct what is off",optional:"optional",chips:[{label:"The hypothesis",seed:"Your hypothesis is off: in fact, "},{label:"The angles",seed:"On the angles: "},{label:"The size",seed:"On target size: "},{label:"The region",seed:"On geography: "}],fixPh:"Write it as you would to your team â Stan recalibrates on it.",fixPhAnswer:"Answer Stan here â (a), (b), or your own words.",fixSubmit:"Update my strategy â",fixSending:"Stan is recalibrating your strategyâ¦",fixApplied:"Correction applied â your strategy is up to date, on the left.",updated:"â Just updated",you:"You",goK:"Launch the search",gets:["Your private targets page, refreshed every morning","Every company judged on your thesis, with the reason in plain words","Your angles corrected at any time, in plain language","A call with Alexandre to tune them by voice"],phoneLabel:"Your phone number",phonePh:"+33 6 12 34 56 78",phoneHint:"So we can hand you your targets and tune your angles by voice.",launch:"Launch the search for my targets â",launching:"Launchingâ¦",after:"Stan screens your market: your kept targets arrive within 30 to 60 minutes, on this page and by email.",nudge:"We need a number to hand you your targets â or book a call just below.",rdv:"Prefer to talk? Book 20 minutes with Alexandre"}};function sc(t){const n=t instanceof Error?t.message:String(t);return/expir|invalide|401|Reconnectez|non vérifié|not verified/i.test(n)}function kj({fund:t,memberSession:n,lang:r,onLaunched:i,onNeedLogin:s,onRdv:a}){const o=om[r]||om.fr,[c,l]=m.useState(n?"loading":"expired"),[d,p]=m.useState(null),[u,g]=m.useState(!1),[f,L]=m.useState(""),[v,y]=m.useState([]),[h,b]=m.useState(!1),[x,A]=m.useState(""),[w,S]=m.useState(!1),[E,j]=m.useState(!1),[O,k]=m.useState(""),_=m.useRef(null),N=m.useRef(null),I=m.useRef(null),ce=m.useRef(null),K=(x.match(/\d/g)||[]).length>=8;function pe(){_.current&&window.clearInterval(_.current),_.current=null}function ee(H=!1){if(!n){l("expired");return}pe();let se=0;const ie=async()=>{se+=1;try{const he=await gx(n,H);if(he.state==="ready"&&he.criteria&&(he.criteria.lead||se>5)){pe(),p(he.criteria),l("ready");return}l(Le=>Le==="ready"?Le:"deriving")}catch(he){pe(),l(sc(he)?"expired":"error")}se>60&&pe()};ie(),_.current=window.setInterval(()=>void ie(),6e3)}m.useEffect(()=>(ee(!1),()=>{pe(),N.current&&window.clearInterval(N.current)}),[t,n]),m.useEffect(()=>{ce.current&&(ce.current.scrollTop=ce.current.scrollHeight)},[v,h]);async function P(H){H.preventDefault();const se=f.trim();if(!(!se||h)&&!(!v.some(ie=>ie.who==="stan")&&se.length<6)){b(!0),k(""),y(ie=>[...ie,{who:"you",text:se}
3606]),L("");try{const ie=await xx(n,se);if(!ie.job_id){const xe=wh(ie);xe&&y(oe=>[...oe,{who:"stan",text:xe}]),b(!1);return}const he=ie.job_id,Le=window.setInterval(async()=>{try{const xe=await Sp(he);if(!xe.done)return;window.clearInterval(Le);const oe=wh(xe);oe&&y(z=>[...z,{who:"stan",text:oe}]),xe.applied&&(y(z=>[...z,{who:"done",text:o.fixApplied}]),g(!0),ee(!0)),b(!1)}catch{}},6e3);N.current=Le}catch(ie){sc(ie)&&l("expired"),k(ie instanceof Error?ie.message:String(ie)),b(!1)}}}async function D(){var H;if(!(E||h)){if(!K){S(!0),(H=I.current)==null||H.focus();return}j(!0),k("");try{await fx(n,r,x),i()}catch(se){sc(se)?l("expired"):k(se instanceof Error?se.message:String(se)),j(!1)}}}const M=t,re=c==="ready";return e.jsxs("section",{className:"ppdt",id:"decouvrir","aria-labelledby":"ppdt-title",children:[e.jsx("style",{children:Aj}),e.jsxs("div",{className:"ppdt-head",children:[e.jsxs("div",{className:"ppdt-head-txt",children:[e.jsx("span",{className:"ppdt-badge",children:o.badge}),e.jsx("h2",{id:"ppdt-title",className:"ppdt-title",children:o.title}),e.jsx("p",{className:"ppdt-lead",children:o.lead(M)}),e.jsx("ol",{className:"ppdt-steps","aria-label":r==="fr"?"Votre parcours":"Your journey",children:o.steps.map((H,se)=>e.jsxs("li",{className:se===0?"done":se===1?"now":"todo",children:[e.jsx("b",{"aria-hidden":!0,children:se===0?"â":se+1}),e.jsx("span",{children:H})]},H))}),e.jsx("a",{className:"ppdt-jump",href:"#ppdt-go",children:o.jump})]}),e.jsxs("div",{className:"ppdt-ex","aria-hidden":!0,children:[e.jsxs("div",{className:"ppdt-ex-h",children:[e.jsx("span",{children:o.exTitle}),e.jsx("em",{children:o.exTag})]}),o.exRows.map(H=>e.jsxs("div",{className:`ppdt-ex-row ${H.ok?"ok":"ko"}`,children:[e.jsx("span",{className:"ppdt-ex-dot",children:H.ok?"â":"â"}),e.jsx("span",{className:"ppdt-ex-name",children:H.name}),e.jsx("span",{className:"ppdt-ex-why",children:H.why})]},H.name))]})]}),e.jsxs("div",{className:"ppdt-grid",children:[e.jsxs("div",{className:"ppdt-card ppdt-read",children:[e.jsxs("p",{className:"ppdt-k",children:[e.jsx("b",{children:"1"}),o.readK]}),c==="ready"&&d?e.jsxs(e.Fragment,{children:[u&&e.jsx("p",{className:"ppdt-updated",children:o.updated}),e.jsx("div",{className:`ppdt-these${u?" fresh":""}`,children:e.jsx(ll,{criteria:d,lang:r,variant:"pour",exclusive:!0})})]}):c==="expired"?e.jsxs("div",{className:"ppdt-state",children:[e.jsx("p",{children:o.expired}),e.jsx("button",{type:"button",className:"ppdt-btn",onClick:s,children:o.expiredBtn})]}):c==="error"?e.jsxs("div",{className:"ppdt-state",children:[e.jsx("p",{children:o.error}),e.jsx("button",{type:"button",className:"ppdt-link",onClick:()=>{l("loading"),ee(!0)},children:o.retry})]}):e.jsxs("div",{className:"ppdt-state",children:[e.jsx("span",{className:"ppdt-bar","aria-hidden":!0}),e.jsx("p",{children:c==="deriving"?o.deriving:o.loading})]})]}),e.jsxs("aside",{className:"ppdt-side",children:[e.jsxs("form",{className:`ppdt-card ppdt-fix${re?"":" off"}`,onSubmit:P,children:[e.jsxs("p",{className:"ppdt-k",children:[e.jsx("b",{children:"2"}),o.fixK,e.jsx("em",{children:o.optional})]}),e.jsx("div",{className:"ppdt-chips",children:o.chips.map(H=>e.jsx("button",{type:"button",className:"ppdt-chip",disabled:!re||h,onClick:()=>L(se=>{const ie=se.trim(),he=o.chips.map(Le=>Le.seed.trim());return!ie||he.includes(ie)?H.seed:se.replace(/\s*$/,` 3607`)+H.seed}),children:H.label},H.label))}),!!v.length&&e.jsxs("div",{className:"ppdt-log",ref:ce,children:[v.map((H,se)=>e.jsxs("p",{className:`ppdt-msg ${H.who}`,children:[e.jsx("span",{className:"ppdt-who",children:H.who==="you"?o.you:H.who==="done"?"â":"Stan"}),H.text]},`${se}-${H.text.slice(0,10)}`)),h&&e.jsxs("p",{className:"ppdt-msg stan pending",children:[e.jsx("span",{className:"ppdt-who",children:"Stan"}),e.jsxs("span",{className:"ppdt-dots",children:[e.jsx("i",{}),e.jsx("i",{}),e.jsx("i",{})]}),o.fixSending]})]}),e.jsx("textarea",{className:"ppdt-input ppdt-ta",rows:2,maxLength:12e3,placeholder:v.some(H=>H.who==="stan")?o.fixPhAnswer:o.fixPh,value:f,onChange:H=>L(H.target.value),disabled:!re||h}),e.jsx("button",{type:"submit",className:"ppdt-link",disabled:!re||h||!f.trim(),children:h?o.fixSending:o.fixSubmit})]}),e.jsxs("div",{id:"ppdt-go",className:`ppdt-card ppdt-go${re?"":" off"}`,children:[e.jsxs("p",{className:"ppdt-k",children:[e.jsx("b",{children:"3"}),o.goK]}),e.jsx("ul",{className:"ppdt-gets",children:o.gets.map(H=>e.jsx("li",{children:H},H))}),e.jsxs("label",{className:"ppdt-lbl",children:[o.phoneLabel,e.jsx("input",{ref:I,type:"tel",inputMode:"tel",autoComplete:"tel",placeholder:o.phonePh,value:x,onChange:H=>{A(H.target.value),S(!1)},disabled:!re||E,className:`ppdt-input${w?" nudge":""}`}),e.jsx("span",{className:"ppdt-fieldhint",children:o.phoneHint})]}),e.jsx("button",{type:"button",className:"ppdt-launch",disabled:!re||E||h,onClick:()=>void D(),children:E?o.launching:o.launch}),e.jsx("p",{className:`ppdt-after${w?" warn":""}`,children:w?o.nudge:o.after}),O&&e.jsx("p",{className:"ppdt-err",role:"alert",children:O}),e.jsxs("button",{type:"button",className:"ppdt-rdv",onClick:a,children:["ð ",o.rdv]})]})]})]})]})}const Aj=` 3608.ppdt{margin:26px 0 6px;border:1px solid #CFE8DA;border-radius:18px;overflow:hidden; 3609background:#fff;box-shadow:0 18px 44px -28px rgba(14,138,68,.45)} 3610.ppdt *{box-sizing:border-box} 3611.ppdt-head{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:28px;align-items:center;
3612padding:28px 30px 26px;background:linear-gradient(135deg,#F1FAF4 0%,#E6F6EC 55%,#F7FBF9 100%); 3613border-bottom:1px solid #DDEFE4} 3614.ppdt-badge{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px; 3615background:#12A150;color:#fff;font-size:12px;font-weight:700;letter-spacing:.01em} 3616.ppdt-badge::before{content:"";width:6px;height:6px;border-radius:999px;background:#fff;opacity:.9} 3617.ppdt-title{margin:12px 0 0;font-size:clamp(24px,2.8vw,34px);line-height:1.1;letter-spacing:-.035em; 3618font-weight:800;color:#0F1D33} 3619.ppdt-lead{margin:12px 0 0;font-size:15px;line-height:1.62;color:#3D4F68;max-width:60ch} 3620.ppdt-steps{list-style:none;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px} 3621.ppdt-steps li{display:inline-flex;align-items:center;gap:7px;padding:6px 11px 6px 6px;border-radius:999px; 3622background:#fff;border:1px solid #DDE7EF;font-size:12.5px;color:#8FA0B8;font-weight:600;white-space:nowrap} 3623.ppdt-jump{display:none;margin-top:14px;font-size:13.5px;font-weight:700;color:#0E8A44;text-decoration:none} 3624.ppdt-go{scroll-margin-top:84px} 3625.ppdt-steps b{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px; 3626border-radius:999px;background:#EEF2F6;color:#8FA0B8;font-size:12px} 3627.ppdt-steps li.done{color:#0E8A44;border-color:#CFE8DA} 3628.ppdt-steps li.done b{background:#12A150;color:#fff} 3629.ppdt-steps li.now{color:#0F1D33;border-color:#12A150;box-shadow:0 0 0 3px rgba(18,161,80,.12)} 3630.ppdt-steps li.now b{background:#0F1D33;color:#fff} 3631.ppdt-ex{background:#fff;border:1px solid #DDEFE4;border-radius:14px;padding:14px 14px 8px; 3632box-shadow:0 10px 26px -20px rgba(15,29,51,.35)} 3633.ppdt-ex-h{display:flex;justify-content:space-between;align-items:baseline;margin:0 0 8px} 3634.ppdt-ex-h span{font-size:12px;font-weight:700;color:#0F1D33} 3635.ppdt-ex-h em{font-style:normal;font-size:11px;color:#8FA0B8} 3636.ppdt-ex-row{display:grid;grid-template-columns:22px auto 1fr;gap:8px;align-items:center; 3637padding:9px 2px;border-top:1px solid #EEF2F6;font-size:12.5px} 3638.ppdt-ex-row:first-of-type{border-top:0} 3639.ppdt-ex-dot{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px; 3640border-radius:6px;font-size:11px;font-weight:800;color:#fff;background:#12A150} 3641.ppdt-ex-row.ko .ppdt-ex-dot{background:#C0353A} 3642.ppdt-ex-name{font-weight:700;color:#0F1D33;filter:blur(.4px)} 3643.ppdt-ex-why{color:#4B5E78;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} 3644.ppdt-ex-row.ko .ppdt-ex-why{color:#9B1C1C} 3645.ppdt-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr);gap:18px;padding:22px 30px 28px} 3646.ppdt-card{border:1px solid #E3E8F0;border-radius:14px;padding:18px 18px 16px;background:#fff} 3647.ppdt-card.off{opacity:.55} 3648.ppdt-side{display:flex;flex-direction:column;gap:14px;align-self:start;position:sticky;top:84px} 3649.ppdt-k{display:flex;align-items:center;gap:9px;margin:0 0 10px;font-size:14px;font-weight:750;color:#0F1D33} 3650.ppdt-k b{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;flex:none; 3651border-radius:8px;background:#0F1D33;color:#fff;font-size:12px} 3652.ppdt-k em{margin-left:auto;font-style:normal;font-size:11.5px;font-weight:600;color:#8FA0B8} 3653.ppdt-updated{margin:0 0 10px;font-size:12.5px;font-weight:700;color:#0E8A44} 3654.ppdt-these{border-radius:10px;transition:box-shadow .6s ease} 3655.ppdt-these.fresh{box-shadow:0 0 0 3px rgba(18,161,80,.18)} 3656.ppdt-these .pp-th{font-size:13.5px} 3657.ppdt-these .pp-th-lead{font-size:14.5px;line-height:1.6} 3658.ppdt-these .pp-th-h{font-size:12.5px} 3659.ppdt-state{padding:22px 4px 8px} 3660.ppdt-state p{margin:12px 0 0;font-size:14px;line-height:1.55;color:#4B5E78} 3661.ppdt-bar{display:block;height:6px;border-radius:99px;background:#E3E8F0;overflow:hidden;position:relative} 3662.ppdt-bar::after{content:"";position:absolute;inset:0;width:40%;background:#12A150;border-radius:99px; 3663animation:ppdtLoad 1.1s ease-in-out infinite} 3664@keyframes ppdtLoad{0%{transform:translateX(-20%)}100%{transform:translateX(250%)}} 3665.ppdt-chips{display:flex;flex-wrap:wrap;gap:7px;margin:0 0 10px} 3666.ppdt-chip{font-size:12px;font-weight:650;color:#0E8A44;background:#F3FBF6;border:1px solid #BFE6CF; 3667border-radius:999px;padding:6px 11px;cursor:pointer} 3668.ppdt-chip:hover:not(:disabled){background:#E7F6EE} 3669.ppdt-chip:disabled{opacity:.55;cursor:default} 3670.ppdt-log{display:flex;flex-direction:column;gap:7px;max-height:220px;overflow:auto;margin:0 0 10px} 3671.ppdt-msg{margin:0;font-size:13px;line-height:1.5;padding:9px 11px;border-radius:12px;max-width:94%;white-space:pre-wrap} 3672.ppdt-msg.you{align-self:flex-end;background:#E7F6EE;color:#16233A} 3673.ppdt-msg.stan{align-self:flex-start;background:#F9FBFD;border:1px solid #E3E8F0;color:#16233A} 3674.ppdt-msg.done{align-self:flex-start;background:#E7F6EE;color:#0E8A44;font-weight:650} 3675.ppdt-who{display:block;font-size:11px;font-weight:700;color:#8FA0B8;margin-bottom:2px} 3676.ppdt-dots{display:inline-flex;gap:3px;margin-right:6px;vertical-align:middle} 3677.ppdt-dots i{width:5px;height:5px;border-radius:99px;background:#12A150;animation:ppdtDot 1s infinite ease-in-out} 3678.ppdt-dots i:nth-child(2){animation-delay:.15s}
3678.ppdt-dots i:nth-child(3){animation-delay:.3s} 3679@keyframes ppdtDot{0%,100%{opacity:.25}50%{opacity:1}} 3680.ppdt-input{width:100%;border:1px solid #E3E8F0;border-radius:10px;padding:10px 12px;font-size:14px; 3681font-family:inherit;color:#16233A;background:#fff} 3682.ppdt-input:focus{outline:none;border-color:#12A150;box-shadow:0 0 0 3px rgba(18,161,80,.12)} 3683.ppdt-input.nudge{border-color:#E0A100;box-shadow:0 0 0 3px rgba(224,161,0,.18)} 3684.ppdt-ta{resize:vertical;line-height:1.5} 3685.ppdt-link{margin-top:8px;background:none;border:0;padding:0;font-size:13.5px;font-weight:700; 3686color:#0E8A44;cursor:pointer;text-align:left;font-family:inherit} 3687.ppdt-link:hover:not(:disabled){text-decoration:underline} 3688.ppdt-link:disabled{opacity:.5;cursor:default} 3689.ppdt-go{border-color:#BFE6CF;background:linear-gradient(180deg,#FFFFFF 0%,#F6FCF8 100%)} 3690.ppdt-gets{list-style:none;margin:0 0 14px;padding:0;display:flex;flex-direction:column;gap:7px} 3691.ppdt-gets li{position:relative;padding-left:24px;font-size:13.5px;line-height:1.45;color:#16233A} 3692.ppdt-gets li::before{content:"â";position:absolute;left:0;top:0;width:17px;height:17px;border-radius:5px; 3693background:#E7F6EE;color:#0E8A44;font-size:11px;font-weight:800;display:inline-flex;align-items:center;justify-content:center} 3694.ppdt-lbl{display:flex;flex-direction:column;gap:6px;font-size:12.5px;font-weight:650;color:#4B5E78} 3695.ppdt-fieldhint{font-size:12px;font-weight:400;color:#8FA0B8} 3696.ppdt-launch{width:100%;margin-top:12px;border:0;border-radius:12px;padding:15px 18px;background:#12A150; 3697color:#fff;font-size:15.5px;font-weight:800;cursor:pointer;font-family:inherit;letter-spacing:-.01em; 3698box-shadow:0 10px 22px -12px rgba(18,161,80,.75);transition:transform .12s ease,background .12s ease} 3699.ppdt-launch:hover:not(:disabled){background:#0E8A44;transform:translateY(-1px)} 3700.ppdt-launch:disabled{opacity:.6;cursor:progress;transform:none} 3701.ppdt-after{margin:10px 0 0;font-size:12.5px;line-height:1.5;color:#4B5E78} 3702.ppdt-after.warn{color:#9A6700;font-weight:600} 3703.ppdt-err{margin:10px 0 0;padding:9px 11px;border-radius:8px;background:#FDF3F3;color:#9B1C1C;font-size:13px} 3704.ppdt-rdv{margin-top:12px;width:100%;background:#fff;border:1px solid #E3E8F0;border-radius:10px;padding:10px 12px; 3705font-size:13px;font-weight:650;color:#16233A;cursor:pointer;font-family:inherit} 3706.ppdt-rdv:hover{border-color:#12A150;color:#0E8A44} 3707.ppdt-btn{margin-top:12px;border:0;border-radius:10px;padding:11px 16px;background:#0F1D33;color:#fff; 3708font-size:14px;font-weight:700;cursor:pointer;font-family:inherit} 3709@media (max-width:900px){ 3710 .ppdt-head{grid-template-columns:1fr;padding:22px 18px} 3711 .ppdt-grid{grid-template-columns:1fr;padding:16px 16px 20px} 3712 .ppdt-side{position:static} 3713 .ppdt-jump{display:inline-flex} 3714 .ppdt-steps li{white-space:normal} 3715} 3716@media (prefers-reduced-motion: reduce){ 3717 .ppdt-bar::after,.ppdt-dots i{animation:none} 3718 .ppdt-launch{transition:none} 3719} 3720`,yd="pp_decouvrir";function Sj(){try{const t=new URLSearchParams(window.location.search).get("decouvrir")||"";return t.trim()?(sessionStorage.setItem(yd,t.trim()),t.trim()):(sessionStorage.getItem(yd)||"").trim()}catch{return""}}function lm(){try{sessionStorage.removeItem(yd)}catch{}}const cm=t=>(t||"").trim().toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/^-+|-+$/g,""),Ej="https://alexandre-79537--airtable-bridge-fastapi-app.modal.run",Nj="tblEgYhLpdBdcpKrw";async function Cj(t){var c;const n=encodeURIComponent(`LOWER({email_lead})="${t.toLowerCase().trim()}"`),r=`${Ej}/at/main/${Nj}?filterByFormula=${n}&fields%5B%5D=fund_type`,i=await fetch(r);if(!i.ok)return[];const s=await i.json(),a=new Set,o=[];for(const l of s.records||[]){const d=(((c=l.fields)==null?void 0:c.fund_type)||"").trim();d&&!a.has(d)&&(a.add(d),o.push(d))}return o.sort((l,d)=>l.localeCompare(d,"fr",{sensitivity:"base"})),o}function _j(t){const n=Math.max(0,Math.floor(t));return`${String(Math.floor(n/60)).padStart(2,"0")}:${String(n%60).padStart(2,"0")}`}const dm=[{k:"these",fr:"Votre thèse est verrouillée",en:"Your thesis is locked in",whyFr:"Vos angles deviennent les critères de tri appliqués à chaque société.",whyEn:"Your angles become the criteria applied to every company."},{k:"sourcing",fr:"Recherche de vos cibles",en:"Searching for your targets",whyFr:"Stan balaie votre marché angle par angle, puis confronte chaque société à votre crible : retenue, ou écartée avec sa raison.",whyEn:"Stan sweeps your market angle by angle, then checks every company against your screen: kept, or ruled out with its reason."},{k:"publication",fr:"Publication de votre page",en:"Publishing your page",whyFr:"Vos cibles retenues prennent leur adresse définitive â vous y reviendrez chaque jour.",whyEn:"Your kept targets get their permanent address â you will c
3720ome back to it daily."}],Tj=new Set(["gmail.com","googlemail.com","outlook.com","hotmail.com","hotmail.fr","live.com","live.fr","yahoo.com","yahoo.fr","icloud.com","me.com","free.fr","orange.fr","wanadoo.fr","sfr.fr","laposte.net","protonmail.com","proton.me","gmx.com","aol.com","msn.com"]);function pm(t){const n=(t.split("@")[1]||"").trim().toLowerCase();return!n||Tj.has(n)?"":n}function qj(){try{return JSON.parse(localStorage.getItem("proplace_nl_prefs")||"{}")||{}}catch{return{}}}function um(t){try{localStorage.setItem("proplace_nl_prefs",JSON.stringify(t))}catch{}}function Fj(t,n,r){return rn(t)?r==="fr"?"/fr/carte#alertes":"/carte#alertes":`${n?pa(t):Tn(t)}#alertes`}function Oj(){const{lang:t}=ae(),n=new URLSearchParams(window.location.search),r=n.get("channel")||"",i=n.get("return_origin")||"https://analysis.proplace.co",s=["https://analysis.proplace.co","https://proplace.co","https://www.proplace.co","http://localhost:5173","http://127.0.0.1:5173"],a=/^[a-f0-9]{32}$/.test(r)&&s.includes(i),o=Ge(),c=n.get("fund")||(o==null?void 0:o.fund_type)||"",[l,d]=m.useState(!0),[p,u]=m.useState(!1),g=m.useRef(!1);function f(v,y=Ge()){!a||window.parent===window||window.parent.postMessage({type:v,channel:r,...v==="proplace:journey:authenticated"&&(y!=null&&y.member_session)?{session:y.member_session,fund:y.fund_type}:{}},i)}function L(){var v;(v=Ge())!=null&&v.member_session&&(u(!0),f("proplace:journey:authenticated"))}return m.useEffect(()=>{let v=!0;if(a&&!g.current&&(g.current=!0,f("proplace:journey:login-ready")),!a||!(o!=null&&o.email)||!o.member_session||!c){d(!1);return}return Cs({email:o.email,session:o.member_session,fund_type:c}).then(y=>{if(!v||!y.session)return;const h={email:y.email||o.email,fund_type:y.fund_type||c,ts:Date.now(),member_session:y.session};ur(h),u(!0),f("proplace:journey:authenticated",h)}).catch(()=>{}).finally(()=>{v&&d(!1)}),()=>{v=!1}},[]),a?l||p?e.jsxs("section",{className:"ppjc-connection","aria-busy":"true",children:[e.jsx("style",{children:` 3721 .ppjc-connection{max-width:480px;margin:48px auto;padding:24px;color:#10263b;font:16px/1.5 system-ui} 3722 .ppjc-connection [role=status]{font-weight:600} 3723 .ppjc-connection .ppjc-progress{height:8px;overflow:hidden;border-radius:8px;background:#e3e8f0} 3724 .ppjc-connection .ppjc-progress span{display:block;width:35%;height:100%;border-radius:8px;background:#246bce;animation:ppjc-waiting 1.4s ease-in-out infinite alternate} 3725 .ppjc-connection .ppjc-note{color:#526479;font-size:14px} 3726 @keyframes ppjc-waiting{from{transform:translateX(-100%)}to{transform:translateX(285%)}} 3727 @media(prefers-reduced-motion:reduce){.ppjc-connection .ppjc-progress span{animation:none}} 3728 `}),e.jsx("p",{role:"status",children:l?t==="fr"?"Connexion à votre compte Proplaceâ¦":"Connecting to your Proplace accountâ¦":t==="fr"?"Compte confirmé. Votre dossier sâouvre dans le mémo.":"Account confirmed. Your dossier is opening in the memo."}),e.jsx("div",{className:"ppjc-progress",role:"progressbar","aria-label":t==="fr"?l?"Vérification de votre session":"Ouverture du dossier privé":l?"Checking your session":"Opening the private dossier",children:e.jsx("span",{"aria-hidden":"true"})}),e.jsx("p",{className:"ppjc-note",children:l?t==="fr"?"Nous vérifions votre session. Cela peut prendre quelques instants ; vous pouvez patienter ici.":"We are checking your session. This may take a few moments; you can stay here.":t==="fr"?"Votre session est confirmée. Patientez pendant lâouverture de votre dossier privé.":"Your session is confirmed. Please wait while your private dossier opens."})]}):e.jsx(Ur,{intent:"login",loginOnly:!0,preferredLoginFund:c,notice:t==="fr"?"Connectez votre compte pour ouvrir le dossier privé. Aucun mémo ni sourcing ne sera lancé.":"Connect your account to open the private dossier. No memo or sourcing will start.",onClose:()=>f("proplace:journey:cancelled"),onAuthenticated:L}):e.jsx("p",{role:"alert",children:"Lien de connexion invalide. Revenez au mémo pour ouvrir la connexion."})}function g1(){const t=typeof window>"u"?null:new URLSearchParams(window.location.search);return(t==null?void 0:t.get("journey"))==="1"&&t.get("popup")==="1"?e.jsx(Oj,{}):e.jsx(Mj,{})}function Mj(){var T;const{lang:t,localizePath:n}
3728=ae(),r=t==="fr",i=da(),s=Ge(),[a,o]=m.useState(!1),[c,l]=m.useState(!1),[d,p]=m.useState(null),[u,g]=m.useState(!1),[f,L]=m.useState(0),[v,y]=m.useState(qj),[h,b]=m.useState([]),[x,A]=m.useState(""),[w,S]=m.useState(null),[E,j]=m.useState(0),[O,k]=m.useState(!1),[_,N]=m.useState(""),[I,ce]=m.useState(null),[K,pe]=m.useState(0),[ee,P]=m.useState(""),[D]=m.useState(Sj),M=m.useRef(!1),re=m.useRef(!1),H=(d==null?void 0:d.plan)||"free";ht({en:{title:"Settings · Proplace",description:"Account, newsletters, subscription."},fr:{title:"Paramètres · Proplace",description:"Compte, newsletters, abonnement."}}),m.useEffect(()=>{const C=new URLSearchParams(window.location.search);if(C.get("journey")!=="1"||re.current)return;re.current=!0;const q=C.get("fund")||(s==null?void 0:s.fund_type)||"",G=()=>{P(q),o(!0)};if(!(s!=null&&s.email)||!s.member_session||!q){G();return}Cs({email:s.email,session:s.member_session,fund_type:q}).then(F=>{ur({email:F.email||s.email,fund_type:F.fund_type||q,ts:Date.now(),member_session:F.session}),C.delete("journey"),C.delete("fund"),window.history.replaceState(window.history.state,"",window.location.pathname+(C.toString()?"?"+C.toString():"")+window.location.hash),A(r?"Accès au dossier confirmé. Revenez au mémo et cliquez sur « Reprendre avec mon compte ».":"File access confirmed. Return to the memo and click âContinue with my accountâ.")}).catch(G)},[s==null?void 0:s.email,s==null?void 0:s.fund_type,s==null?void 0:s.member_session,r]),m.useEffect(()=>{if(!(s!=null&&s.email))return;let C=!0;async function q(){try{const G=new URLSearchParams(window.location.search),F=G.get("session_id");if(F){const R=await(await fetch(`${_e}/inbound/credits/confirm`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({session_id:F})})).json().catch(()=>({}));R!=null&&R.ok&&A(r?R.plan?`Plan ${R.plan} activé â pipeline débloqué.`:`Paiement confirmé â +${R.credits||""} crédits.`:R.plan?`Plan ${R.plan} activated â pipeline unlocked.`:`Payment confirmed â +${R.credits||""} credits.`);const Q=new URL(window.location.href);Q.searchParams.delete("session_id"),Q.searchParams.delete("credits"),Q.searchParams.delete("plan"),window.history.replaceState(null,"",Q.pathname+Q.search)}else if(G.get("credits")==="cancel"||G.get("plan")==="cancel"){A
3728(r?"Paiement annulé.":"Payment cancelled.");const J=new URL(window.location.href);J.searchParams.delete("credits"),J.searchParams.delete("plan"),window.history.replaceState(null,"",J.pathname+J.search)}}catch{}try{const F=await(await fetch(`${_e}/inbound/credits`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:s.email})})).json();if(!C)return;p(F),g(!1)}catch{C&&g(!0)}try{const G=await Cj(s.email);C&&b(G.length?G:[s.fund_type])}catch{C&&b([s.fund_type])}try{const F=await(await fetch(`${_e}/newsletter/status`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:s.email})})).json();F!=null&&F.ok&&F.prefs&&typeof F.prefs=="object"&&C&&y(J=>{const R={...J,...F.prefs};return um(R),R})}catch{}}return q(),()=>{C=!1}},[s==null?void 0:s.fund_type,s==null?void 0:s.email,f,r]),m.useEffect(()=>{if(!(!D||M.current)){if(!s){P(D),o(!0);return}if(cm(D)===cm(s.fund_type)){lm();return}M.current=!0,(async()=>{try{if(!s.member_session)throw new Error("no session");const C=await Cs({email:s.email,session:s.member_session,fund_type:D});ur({email:s.email,fund_type:C.fund_type||D,ts:Date.now(),member_session:C.session}),window.location.reload()}catch{P(D),o(!0)}})()}},[D,s==null?void 0:s.email,s==null?void 0:s.fund_type,s==null?void 0:s.member_session]),m.useEffect(()=>{const C=(s==null?void 0:s.fund_type)||"";if(!C||rn(C))return;let q=!0;return ce(null),q2(C).then(G=>{q&&ce(G)}),()=>{q=!1}},[s==null?void 0:s.fund_type,K]);const[se,ie]=m.useState(0);m.useEffect(()=>{const C=s==null?void 0:s.email;if(!C)return;let q=!0,G;async function F(){try{const R=await(await fetch(`${_e}/inbound/onboard-status`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:C,fund:(s==null?void 0:s.fund_type)||""})})).json();if(!q)return;if(R.status==="absent"||R.status==="unknown"){if(se&&Date.now()/1e3-se<600){G=setTimeout(F,5e3);return}S(null);return}S(R),R.status==="running"&&(G=setTimeout(F,2e4))}catch{}}return F(),()=>{q=!1,clearTimeout(G)}},[s==null?void 0:s.email,s==null?void 0:s.fund_type,K,se]);async function he(C){const q=!v[C];if(y(J=>{const R={...J,[C]:q};return um(R),R}),!(s!=null&&s.email))return;const G=C==="general"?"general":C,F=q?"/newsletter/subscribe":"/newsletter/unsubscribe";try{await fetch(`${_e}${F}`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:s.email,sector:G,website:""})})}catch{}}async function Le(C){if(s!=null&&s.email)try{const q=window.location.origin+(r?"/fr/compte":"/compte"),F=await(await fetch(`${_e}/inbound/credits/checkout`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:s.email,lookup_key:C,success_url:`${q}?credits=ok`,cancel_url:`${q}?credits=cancel`})})).json();if(F.url){window.location.href=F.url;return}throw new Error(F.detail||F.error||"Checkout unavailable")}catch(q){A(q instanceof Error?q.message:String(q))}}async function xe(C,q="year"){if(!(s!=null&&s.email)||O)return;const G=_.trim()||(rn(s.fund_type)?pm(s.email):s.fund_type);if(!G){A(r?"Indiquez le nom de votre société (ou un site) pour activer le plan.":"Enter your company name (or website) to activate the plan.");return}k(!0);try{const F=window.location.origin+(r?"/fr/compte":"/compte"),R=await(await fetch(`${_e}/inbound/credits/checkout`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:s.email,plan:C,company:G,fund_type:s.fund_type||G,interval:q,success_url:`${F}?plan=ok`,cancel_url:`${F}?plan=cancel`})})).json();if(R.url){window.location.href=R.url;return}throw new Error(R.detail||R.error||"Checkout unavailable")}catch(F){A(F instanceof Error?F.message:String(F)),k(!1)}}m.useEffect(()=>{if((w==null?void 0:w.status)!=="running")return;const C=(w.started||0)>0?w.started*1e3:Date.now(),q=()=>j(Math.max(0,(Date.now()-C)/1e3));q();const G=window.setInterval(q,1e3);return()=>window.clearInterval(G)},[w==null?void 0:w.status,w==null?void 0:w.started]);async function oe(C){if(!(!s||!C||C===s.fund_type))try{const q=s.member_session?await Cs({email:s.email,session:s.member_session,fund_type:C}):null;ur({email:s.email,fund_type:(q==null?void 0:q.fund_type)||C,ts:Date.now(),...q!=null&&q.session?{member_session:q.session}:{}}),window.location.reload()}catch(q){A(q instanceof Error?q.message:String(q)),o(!0)}}if(!s)return e.jsxs(e.Fragment,{children:[e.jsx(zn,{}),e.jsxs("main",{className:"ppc",children:[e.jsx("style",{children:hm}),e.jsxs("div",{className:"ppc-wrap",children:[e.jsx("div",{className:"ppc-eyeb",children:r?"Compte":"Account"}),e.jsx("h1",{className:"ppc-h1",children:r?"Paramètres":"Settings"}),e.jsx("p",{className:"ppc-lead",children:r?"Connectez-vous ou créez votre compte pour gérer newsletters, abonnement et deal flow.":"Log in or create your account to manage newsletters, subscription and deal flow."}),e.jsx("button",{type:"button",className:"ppc-cta",onClick:()=>o(!0),children:ee?r?"Confirmer mon email et découvrir mes cibles â":"Confirm my email and discover my targets â":r?"Se connecter ou créer un compte â":"Log in or create an account â"})]})]}),e.jsx(Nt,{}),a&&e.jsx(Ur,{onClose:()=>o(!1),intent:"login",...ee?{fundForLogin:ee,notice:r?`Confirmez votre email pour découvrir les cibles de ${ee}.`:`Confirm your email to discover ${ee}'s targets.`,onAuthenticated:()=>window.location.reload()}:{}})]});const z=s.fund_type,Y=H==="enterprise"?r?"Entreprise":"Enterprise":H==="standard"?"Standard":r?"Essai / Free":"Trial / Free",B=kp(d==null?void 0:d.plan),X=B?pa(z):Tn(z),te=bh(z,!1),Ae=bh(z,!0),Ze=Fj(z,B,t),Ke=!rn(z)&&I===!1&&(!w||w.status==="absent"),st=!!(w&&w.status!=="done"&&w.status!=="error"&&(w.step==="sourcing"||w.step==="publication")&&s.member_session);function Ct(){lm();const C=Date.now()/1e3;ie(C),S(q=>q&&q.status==="running"?q:{...q||{},status:"running",step:"these",pct:3,company:z||"",phase:r?"Lancement de votre rechercheâ¦":"Starting your searchâ¦"}),pe(q=>q+1),window.setTimeout(()=>window.scrollTo({top:0,behavior:"smooth"}),300)}return e.jsxs(e.Fragment,{children:[e.jsx(zn,{}),e.jsxs("main",{className:"ppc",children:[e.jsx("style",{children:hm}),e.jsx("section",{className:"ppc-sec",children:e.jsxs("div",{className:"ppc-wrap",children:[e.jsx("div",{className:"ppc-eyeb",children:r?"Compte":"Account"}),e.jsxs("div",{className:"ppc-hero",children:[e.jsxs("div",{children:[e.jsx("h1",{className:"ppc-h1",children:r?"Paramètres":"Settings"}),e.jsx("p",{className:"ppc-email",children:s.email}),e.jsxs("div",{className:"ppc-meta",children:[e.jsx("span",{className:`ppc-pill plan-${H}`,children:Y}),h.length>1?e.jsxs("label",{className:"ppc-fund",children:[e.jsx("span",{children:r?"Fonds":"Fund"}),e.jsx("select",{value:z,onChange:C=>oe(C.target.value),"aria-label":r?"Changer de fonds":"Switch fund",children:h.map(C=>e.jsxs("option",{value:C,children:[C,rn(C)?" · member":""]},C))})]}):e.jsx("span",{className:"ppc-fund-id",children:z})]})]}),e.jsx("div",{className:"ppc-credits",children:d!=null&&d.unlimited?e.jsx("div",{className:"ppc-cred-n",children:r?"Illimité":"Unlimited"}):u?e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"ppc-cred-state",children:r?"Crédits indisponibles":"Credits unavailable"}),e.jsx("button",{type:"button",className:"ppc-linkbtn",onClick:()=>L(C=>C+1),children:r?"Réessayer":"Retry"})]}):d===null?e.jsx("div",{className:"ppc-cred-state",children:r?"Chargementâ¦":"Loadingâ¦"}):e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"ppc-cred-n",children:d.total_available}),e.jsx("div",{className:"ppc-cred-l",children:r?"crédits":"credits"}),e.jsxs("div",{className:"ppc-cred-sub",children:[d.daily_left,"/",d.daily_grant," ",r?"offerts":"daily",(d.purchased||0)>0?` + ${d.purchased}`:""]})]})})]}),Ke&&e.jsx(kj,{fund:z,memberSession:s.member_session||"",lang:t,onLaunched:Ct,onNeedLogin:()=>{P(z),o(!0)},onRdv:()=>l(!0)}),!Ke&&I===!1&&!rn(z)&&e.jsxs("div",{className:"ppc-cta-wait",role:"status",children:[e.jsx("span",{className:"ppc-cta ppc-cta-off","aria-disabled":"true",children:r?"Ouvrir mon deal flow â":"Open my deal flow â"}),e.jsx("p",{className:"ppc-cta-note",children:r?"Votre deal flow sâouvrira ici dès que votre page sera publiée â la recherche de vos cibles est en cours ou nâa pas encore abouti.":"Your deal flow will open here as soon as your page is published â the search for your targets is running or has not completed yet."})]}),!Ke&&!(I===!1&&!rn(z))&&e.jsxs(e.Fragment,{children:[e.jsx("a",{className:"ppc-cta",href:X,children:r?B?"Ouvrir mon deal flow (vue complète) â":"Ouvrir mon deal flow (aperçu) â":B?"Open my deal flow (full view) â":"Open my deal flow (preview) â"}),e.jsx("div",{className:"ppc-links",children:B?e.jsxs("div",{className:"ppc-linkcard",children:[e.jsx("b",{children:r?"Lien public · vue complète":"Public link · full view"}),e.jsx("span",{children:r?"Standard et Entreprise â /cibles/<fonds>/open/.":"Standard and Enterprise â /cibles/<fund>/open/."}),e.jsx("a",{href:Ae,children:Ae})]}):e.jsxs("div",{className:"ppc-linkcard",children:[e.jsx("b",{children:r?"Lien public · aperçu":"Public link · preview"}),e.jsx("span",{children:r?"Essai â /cibles/<fonds>/ (sans /open/).":"Trial â /cibles/<fund>/ (no /open/)."}),e.jsx("a",{href:te,children:te})]})})]}),w&&w.status!=="absent"&&e.jsx("div",{className:`ppc-onb ${w.status}${st?" has-film":""}`,children:w.status==="done"?e.jsxs(e.Fragment,{children:[e.jsxs("p",{children:[e.jsx("strong",{children:r?"Votre page est prête.":"Your page is ready."})," ",w.company]}),w.page_url&&e.jsx("a",{className:"ppc-cta sm",href:w.page_url,children:r?"Ouvrir â":"Open â"}),s.member_session&&e.jsx(Ld,{session:s.member_session,flat:!0,collapsible:!0,maxhNarrow:0,heading:r?"Comment vos cibles ont été trouvées":"How your targets were found",style:{display:"block",margin:"14px 0 0"}})]}):w.status==="error"?e.jsx("p",{children:r?"Cela prend plus de temps que prévu â notre équipe finalise votre page.":"Taking longer than expected â our team is finishing your page."}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"ppc-onb-head",children:[e.jsx("strong",{children:r?"Construction de votre espace":"Building your space"}),e.jsx("span",{className:"ppc-onb-clock",children:_j(E)})]}),e.jsx("p",{className:"ppc-onb-phase",children:w.phase||(r?"en coursâ¦":"in progressâ¦")}
3728),e.jsx("div",{className:"ppc-onb-bar","aria-hidden":!0,children:e.jsx("span",{style:{width:`${Math.max(3,Math.min(100,w.pct||0))}%`}})}),e.jsx("ol",{className:"ppc-onb-steps",children:dm.map((C,q)=>{const G=dm.findIndex(J=>J.k===(w.step||"these")),F=q<G?"done":q===G?"now":"todo";return e.jsxs("li",{className:F,children:[e.jsx("span",{className:"ppc-onb-dot","aria-hidden":!0}),e.jsx("span",{className:"ppc-onb-lbl",children:r?C.fr:C.en}),F==="now"&&e.jsx("span",{className:"ppc-onb-why",children:r?C.whyFr:C.whyEn})]},C.k)})}),st&&s.member_session&&e.jsx(Ld,{session:s.member_session,since:se||void 0,waiting:!0,flat:!0,maxh:360,maxhNarrow:0,eyebrow:"Sourcing",heading:r?"Comment Stan cherche vos cibles":"How Stan finds your targets",empty:r?"Le moteur démarre â le film commence dans un instant.":"The engine is starting â the film begins in a moment.",style:{display:"block",margin:"12px 0"}}),e.jsx("p",{className:"ppc-onb-eta",children:r?"Comptez 30 à 60 minutes. Vous pouvez fermer cette page : on vous appelle dès que vos cibles sont prêtes.":"Allow 30 to 60 minutes. You can close this page: we call you as soon as your targets are ready."})]})}),x&&e.jsx("p",{className:"ppc-flash",children:x})]})}),!Ke&&e.jsx("section",{className:"ppc-sec",children:e.jsxs("div",{className:"ppc-wrap",children:[e.jsx("div",{className:"ppc-eyeb",children:r?"Thèse":"Thesis"}),e.jsx("h2",{className:"ppc-h2",children:r?"Piloter votre thèse":"Steer your thesis"}),e.jsx("p",{className:"ppc-sub",children:r?"Identité du fonds, thèse telle que Stan la lit, pouces, puis corrections en langage naturel.":"Fund identity, thesis as Stan reads it, thumbs, then plain-language edits."}),e.jsx(wj,{fund:z,email:s.email,fr:r}),e.jsx("h2",{className:"ppc-h2",style:{marginTop:36},children:r?"Comment Stan a appris":"How Stan learned"}),e.jsx("p",{className:"ppc-sub",style:{marginBottom:18},children:r?"Chaque pouce et chaque correction sont consignés ici, datés.":"Every thumb and every edit is recorded here, dated."}),e.jsx(xj,{fund:z,lang:t})]})}),e.jsx("section",{className:"ppc-sec",children:e.jsxs("div",{className:"ppc-wrap",children:[e.jsx("div",{className:"ppc-eyeb",children:r?"Newsletters et alertes":"Newsletters and alerts"}),e.jsx("h2",{className:"ppc-h2",children:r?"Vos newsletter et alertes":"Your newsletters and alerts"}),e.jsx("p",{className:"ppc-sub",children:r?"Alertes marché du cockpit, newsletter généraliste, puis les 36 sectorielles. Un interrupteur par ligne.":"Cockpit market alerts, the general newsletter, then the 36 sector ones. One switch per row."}),e.jsxs("div",{className:"ppc-nl",children:[(w==null?void 0:w.status)!=="running"&&e.jsx("div",{className:"ppc-nl-row ppc-nl-alerts",children:e.jsx("a",{href:Ze,children:r?"ð Alertes marché (filtres du cockpit) â":"ð Market alerts (cockpit filters) â"})}),e.jsxs("div",{className:"ppc-nl-row ppc-nl-general",children:[e.jsxs("div",{children:[e.jsx("strong",{children:r?"Newsletter généraliste":"General newsletter"}),e.jsx("a",{className:"ppc-meta-txt",href:"/newsletter/",children:"proplace.co/newsletter"})]}),e.jsx("button",{type:"button",className:`ppc-sw${v.general?" on":""}`,onClick:()=>void he("general"),"aria-pressed":!!v.general,children:v.general?"On":"Off"})]}),e.jsx("div",{className:"ppc-nl-sectors",children:nr.map(C=>e.jsxs("div",{className:"ppc-nl-row",children:[e.jsxs("div",{children:[e.jsx("strong",{children:r?C.labelFr:C.label}),e.jsx("a",{className:"ppc-meta-txt",href:C.href,children:C.href})]}),e.jsx("button",{type:"button",className:`ppc-sw${v[C.id]?" on":""}`,onClick:()=>void he(C.id),"aria-pressed":!!v[C.id],children:v[C.id]?"On":"Off"})]},C.id))})]})]})}),e.jsx("section",{className:"ppc-sec",children:e.jsxs("div",{className:"ppc-wrap",children:[e.jsx("div",{className:"ppc-eyeb",children:r?"Abonnement":"Subscription"}),e.jsx("h2",{className:"ppc-h2",children:r?"Votre abonnement":"Your subscription"}),e.jsx("p",{className:"ppc-sub",children:r?"Choisissez une offre : appel stratégique pour la cadrer, ou abonnement annuel par virement sur facture Stripe (IBAN), renouvelé automatiquement chaque année. Tarifs HT.":"Choose a plan: a strategy call to scope it, or a yearly subscription paid by bank transfer on a Stripe invoice (IBAN), renewed automatically each year. Prices exclude tax."}),H==="free"&&rn(z)&&e.jsxs("label",{className:"ppc-cofield",children:[e.jsx("span",{children:r?"Votre société (ou site)":"Your company (or website)"}
3728),e.jsx("input",{type:"text",value:_,onChange:C=>N(C.target.value),onFocus:()=>{_||N(pm(s.email))},placeholder:r?"ex. acme.com":"e.g. acme.com"})]}),e.jsx(hl,{context:"account",currentPlan:H,onTrialCta:()=>l(!0),onRdvCta:()=>l(!0),accountExtras:{payBusy:O,onPay:(C,q)=>void xe(C,q),creditsLine:H==="free"?r?`Essai gratuit : ${(d==null?void 0:d.daily_grant)??3} crédits offerts chaque jour`:`Free trial: ${(d==null?void 0:d.daily_grant)??3} free credits every day`:void 0,creditsSub:H==="free"&&d?`${d.daily_left}/${d.daily_grant} ${r?"offerts":"daily"}`:H==="free"?r?"3/3 offerts":"3/3 daily":void 0,packs:H==="free"?e.jsxs("div",{className:"ppc-packs",children:[e.jsx("h3",{className:"ppc-h3",children:r?"Packs de crédits · 2 ⬠lâunité":"Credit packs · â¬2 each"}),e.jsx("p",{className:"ppc-sub",children:r?"Une analyse avec mémo éclair coûte 1 crédit ; une analyse avec mémo détaillé coûte 3 crédits. Le sourcing quotidien ne consomme jamais de crédits.":"An analysis with an instant memo costs 1 credit; an analysis with a detailed memo costs 3 credits. Daily sourcing never spends credits."}),e.jsx("div",{className:"ppc-pack-grid",children:((T=d==null?void 0:d.packs)!=null&&T.length?d.packs:[{lookup_key:"pp-credits-5",credits:5,price_eur:10},{lookup_key:"pp-credits-20",credits:20,price_eur:40},{lookup_key:"pp-credits-50",credits:50,price_eur:100},{lookup_key:"pp-credits-100",credits:100,price_eur:200}]).map(C=>e.jsxs("div",{className:"ppc-pack",children:[e.jsxs("strong",{children:[C.credits," ",r?"crédits":"credits"]}),e.jsxs("span",{children:[C.price_eur," â¬"]}),e.jsx("button",{type:"button",className:"ppc-pack-btn",onClick:()=>void Le(C.lookup_key),children:r?"Acheter":"Buy"})]},C.lookup_key))})]}):null}})]})}),e.jsx("div",{className:"ppc-wrap ppc-foot",children:e.jsx("button",{type:"button",className:"ppc-logout",onClick:()=>{ux(),i(n("/"))},children:r?"Déconnexion":"Log out"})})]}),e.jsx(Nt,{}),c&&e.jsx(Pi,{onClose:()=>l(!1)}),a&&e.jsx(Ur,{onClose:()=>o(!1),intent:"login",...ee?{fundForLogin:ee,notice:r?`Confirmez votre email pour découvrir les cibles de ${ee}.`:`Confirm your email to discover ${ee}'s targets.`,onAuthenticated:()=>window.location.reload()}:{}})]})}const hm=` 3729.ppc{font-family:var(--pp-body);color:#16233A; 3730background:#fff;-webkit-font-smoothing:antialiased;padding:26px 0 64px;min-height:70vh} 3731.ppc,.ppc *{box-sizing:border-box} 3732.ppc button,.ppc input,.ppc select{font-family:inherit} 3733.ppc-wrap{max-width:1200px;margin:0 auto;padding:0 32px} 3734.ppc-sec{padding:36px 0;border-top:1px solid #E3E8F0} 3735.ppc-sec:first-of-type{border-top:0;padding-top:12px} 3736.ppc-eyeb{display:flex;align-items:center;gap:12px;margin:0 0 16px; 3737font-family:var(--pp-body);font-size:12px;font-weight:500;color:#8FA0B8;font-variant-numeric:tabular-nums} 3738.ppc-eyeb::before{content:"";display:block;width:22px;height:2px;background:#12A150; 3739border-radius:2px;flex:none} 3740.ppc-h1{margin:0;font-size:clamp(28px,3.6vw,42px);line-height:1.08;letter-spacing:-.04em;font-weight:700} 3741.ppc-h2{margin:0;font-size:clamp(22px,2.4vw,30px);line-height:1.14;letter-spacing:-.03em;font-weight:700} 3742.ppc-h3{margin:28px 0 8px;font-size:16px;font-weight:700} 3743.ppc-lead,.ppc-sub{margin:12px 0 0;font-size:15px;line-height:1.66;color:#4B5E78;max-width:62ch} 3744.ppc-email{margin:8px 0 0;font-size:15px;color:#4B5E78} 3745.ppc-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;flex-wrap:wrap;margin-bottom:22px} 3746.ppc-meta{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:12px} 3747.ppc-pill{display:inline-flex;padding:4px 11px;border-radius:999px;font-size:12px;font-weight:650; 3748background:#E7F6EE;color:#0E8A44} 3749.ppc-pill.plan-standard{background:#e8f0ff;color:#1e3a8a} 3750.ppc-pill.plan-enterprise{background:#16233A;color:#fff} 3751.ppc-fund{display:inline-flex;flex-direction:column;gap:2px;font-size:11px;color:#8FA0B8} 3752.ppc-fund select{font-size:13px;padding:6px 10px;border:1px solid #E3E8F0;border-radius:8px;background:#fff;color:#16233A} 3753.ppc-fund-id{font-size:12px;color:#8FA0B8} 3754.ppc-credits{border:1px solid #E3E8F0;border-radius:12px;padding:16px 20px;min-width:132px;text-align:center;background:#F9FBFD} 3755.ppc-cred-n{font-size:28px;font-weight:800;line-height:1;letter-spacing:-.02em} 3756.ppc-cred-l{font-size:12px;color:#8FA0B8;margin-top:4px;font-weight:600} 3757.ppc-cred-sub{font-size:12px;color:#12A150;font-weight:600;margin-top:4px} 3758.ppc-cred-state{font-size:13px;color:#4B5E78;font-weight:600} 3759.ppc-cta{display:inline-flex;align-items:center;margin-top:8px;background:#12A150;color:#fff;font-size:14.5px;
3760font-weight:700;padding:14px 22px;border-radius:10px;text-decoration:none;border:0;cursor:pointer} 3761.ppc-cta:hover{background:#0E8A44;color:#fff} 3762.ppc-cta.sm{padding:10px 16px;font-size:13px;margin-top:10px} 3763.ppc-cta.ppc-cta-off,.ppc-cta.ppc-cta-off:hover{background:#C9D3DF;color:#fff;cursor:not-allowed} 3764.ppc-cta-note{font-size:13px;color:#4B5E78;margin:8px 0 0;max-width:620px;line-height:1.5} 3765.ppc-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;max-width:820px} 3766@media(max-width:720px){.ppc-links{grid-template-columns:1fr}} 3767.ppc-linkcard{border:1px solid #E3E8F0;border-radius:12px;padding:14px 16px;background:#F9FBFD;display:flex;flex-direction:column;gap:6px} 3768.ppc-linkcard b{font-size:13px} 3769.ppc-linkcard span,.ppc-linkcard em{font-size:12.5px;color:#4B5E78;line-height:1.45} 3770.ppc-linkcard a{font-size:13px;font-weight:650;color:#0E8A44;word-break:break-all} 3771.ppc-linkcard.dim{opacity:.72} 3772.ppc-linkcard code{font-size:12.5px;color:#4B5E78;word-break:break-all} 3773.ppc-thesis-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:18px;max-width:820px} 3774@media(max-width:720px){.ppc-thesis-grid{grid-template-columns:1fr}} 3775a.ppc-linkcard{text-decoration:none;color:inherit} 3776a.ppc-linkcard:hover{border-color:#BFE6CF;background:#F3FBF6} 3777.ppc-thesis-acts{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin-top:16px} 3778.ppc-thesis-pilot{margin-top:18px;max-width:820px} 3779.ppc-idform{display:grid;gap:12px;margin-bottom:18px} 3780.ppc-idform .ppc-cofield{max-width:100%;margin:0} 3781.ppc-idform select{border:1px solid #E3E8F0;border-radius:10px;padding:9px 12px;font-size:14px;background:#fff;color:#16233A} 3782.ppc-logo-prev{height:36px;width:auto;max-width:160px;object-fit:contain;border:1px solid #E3E8F0;border-radius:8px;padding:4px;background:#fff} 3783.ppc-these-now{border:1px solid #E3E8F0;border-radius:12px;padding:14px 16px;background:#F9FBFD;margin:18px 0} 3784.ppc-these-now summary{cursor:pointer;font-size:13.5px;font-weight:650;color:#16233A} 3785.ppc-these-lead{margin:12px 0 0;font-size:14px;line-height:1.6;color:#4B5E78} 3786.ppc-these-ang{margin:8px 0 0;font-size:12.5px;color:#4B5E78} 3787.ppc-thumbs-table{margin:22px 0 8px;scroll-margin-top:84px} 3788.ppc-thumbs{width:100%;border-collapse:collapse;font-size:13px;margin-top:10px} 3789.ppc-thumbs th,.ppc-thumbs td{text-align:left;padding:8px 10px;border-bottom:1px solid #E3E8F0;vertical-align:top} 3790.ppc-thumbs th{font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:#8FA0B8;font-weight:650} 3791.ppc-chat-empty{margin:0;padding:14px 16px;border:1px dashed #C9D4E2;border-radius:10px;background:#F9FBFD;font-size:13px;color:#4B5E78} 3792.ppc-chips{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 14px} 3793.ppc-chip{font-size:12px;font-weight:650;color:#0E8A44;background:#F3FBF6;border:1px solid #BFE6CF;border-radius:999px;padding:7px 12px;cursor:pointer} 3794.ppc-chip:hover:not(:disabled){background:#E7F6EE} 3795.ppc-chip:disabled{opacity:.55;cursor:progress} 3796.ppc-chat{display:flex;flex-direction:column;gap:8px;margin-bottom:12px} 3797.ppc-bubble{font-size:13.5px;line-height:1.5;padding:10px 12px;border-radius:12px;max-width:92%;white-space:pre-wrap} 3798.ppc-bubble.you{align-self:flex-end;background:#E7F6EE;color:#16233A} 3799.ppc-bubble.stan{align-self:flex-start;background:#F9FBFD;border:1px solid #E3E8F0;color:#16233A} 3800.ppc-bubble.done{align-self:flex-start;background:#E7F6EE;color:#0E8A44;font-weight:650} 3801.ppc-composer{display:flex;flex-direction:column;gap:8px;align-items:flex-start} 3802.ppc-composer textarea{width:100%;border:1px solid #E3E8F0;border-radius:10px;padding:10px 12px;font-size:14px;line-height:1.5;resize:vertical;font-family:inherit;color:#16233A} 3803.ppc-composer textarea:focus{outline:none;border-color:#12A150;box-shadow:0 0 0 3px rgba(18,161,80,.12)} 3804.ppc-ghost{font-size:13.5px;font-weight:650;color:#0E8A44;text-decoration:none} 3805.ppc-ghost:hover{text-decoration:underline} 3806.ppc-onb-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px} 3807.ppc-onb-clock{font-family:var(--pp-body);font-size:13px; 3808font-variant-numeric:tabular-nums;color:#4B5E78} 3809.ppc-onb-phase{margin:2px 0 10px;font-size:13px;color:#4B5E78} 3810.ppc-onb-steps{list-style:none;margin:14px 0 0;padding:0 0 0 5px; 3811border-left:2px solid #E3E8F0;margin-left:6px} 3812.ppc-onb-steps li{position:relative;padding:6px 0 6px 20px;font-size:13.5px;line-height:1.45;color:#B3BCC6} 3813.ppc-onb-dot{position:absolute;
3813left:-1px;top:11px;width:7px;height:7px;border-radius:999px; 3814background:#fff;border:2px solid #DDE5EE;box-sizing:border-box} 3815.ppc-onb-steps li.done{color:#12A150} 3816.ppc-onb-steps li.done .ppc-onb-dot{background:#12A150;border-color:#12A150} 3817.ppc-onb-steps li.now{color:#0F1D33;font-weight:600} 3818.ppc-onb-steps li.now .ppc-onb-dot{background:#12A150;border-color:#12A150; 3819animation:ppcPulse 1.6s ease-in-out infinite} 3820@keyframes ppcPulse{0%,100%{box-shadow:0 0 0 0 rgba(18,161,80,.5)}50%{box-shadow:0 0 0 5px rgba(18,161,80,0)}} 3821.ppc-onb-why{display:block;margin-top:4px;font-size:12.5px;font-weight:400;line-height:1.5; 3822color:#4B5E78;background:#F1F7F3;border-radius:8px;padding:7px 10px} 3823.ppc-onb-eta{margin:12px 0 0;font-size:12px;line-height:1.5;color:#4B5E78} 3824@media (prefers-reduced-motion: reduce){.ppc-onb-steps li.now .ppc-onb-dot{animation:none}} 3825.ppc-onb{margin-top:22px;border:1px solid #E3E8F0;border-radius:12px;padding:14px 16px;background:#F9FBFD} 3826.ppc-onb.done{border-color:#cfe8da;background:#E7F6EE} 3827.ppc-onb.error{border-color:#f0d0d0;background:#fdf3f3} 3828.ppc-onb p{margin:0;font-size:13.5px;line-height:1.5;color:#0F1D33} 3829.ppc-onb-bar{height:7px;border-radius:999px;background:#E3E8F0;overflow:hidden;margin:10px 0 0} 3830.ppc-onb-bar span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#12A150,#12A150);transition:width .6s ease} 3831.ppc-flash{margin:16px 0 0;padding:10px 12px;border-radius:8px;background:#E7F6EE;color:#0E8A44;font-size:13.5px} 3832.ppc-nl{margin-top:18px;border:1px solid #E3E8F0;border-radius:12px;overflow:hidden;background:#fff} 3833.ppc-nl-alerts{background:#F1F7F3} 3834.ppc-nl-alerts a{font-size:13.5px;font-weight:600;color:#12A150;text-decoration:none} 3835.ppc-nl-alerts a:hover{text-decoration:underline} 3836.ppc-nl-general{background:#F9FBFD} 3837.ppc-nl-sectors{display:grid;grid-template-columns:1fr 1fr} 3838@media (max-width:900px){.ppc-nl-sectors{grid-template-columns:1fr}} 3839.ppc-nl-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 14px; 3840border-top:1px solid #E3E8F0} 3841.ppc-nl > .ppc-nl-row:first-child{border-top:0} 3842.ppc-nl-sectors .ppc-nl-row:nth-child(odd){border-right:1px solid #E3E8F0} 3843.ppc-nl-row strong{display:block;font-size:13px;font-weight:650;line-height:1.3} 3844.ppc-meta-txt{display:block;font-size:11px;color:#8FA0B8;margin-top:2px;text-decoration:none;word-break:break-all} 3845a.ppc-meta-txt:hover{color:#12A150} 3846.ppc-sw{flex:0 0 auto;min-width:52px;padding:6px 11px;border-radius:999px;border:1px solid #E3E8F0;background:#F9FBFD; 3847font-size:12px;font-weight:700;color:#4B5E78;cursor:pointer} 3848.ppc-sw.on{background:#12A150;border-color:#12A150;color:#fff} 3849.ppc-cofield{display:flex;flex-direction:column;gap:5px;max-width:360px;margin:16px 0 0} 3850.ppc-cofield span{font-size:12.5px;color:#4B5E78;font-weight:600} 3851.ppc-cofield input{border:1px solid #E3E8F0;border-radius:10px;padding:9px 12px;font-size:14px;background:#fff;color:#16233A} 3852.ppc-cofield input:focus{outline:none;border-color:#12A150;box-shadow:0 0 0 3px rgba(18,161,80,.12)} 3853.ppc-pay-links{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin:16px 0 0} 3854.ppc-pay-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 0;max-width:820px} 3855@media(max-width:720px){.ppc-pay-grid{grid-template-columns:1fr}} 3856.ppc-pay-btn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;border:1px solid #E3E8F0;border-radius:12px;padding:16px 18px;background:#16233A;color:#fff;cursor:pointer;text-align:left} 3857.ppc-pay-btn.std{background:#12A150;border-color:#12A150} 3858.ppc-pay-btn.ent{background:#16233A} 3859.ppc-pay-btn em{font-style:normal;font-size:15px;font-weight:800} 3860.ppc-pay-btn span{font-size:12.5px;opacity:.88} 3861.ppc-pay-btn strong{margin-top:8px;font-size:14px} 3862.ppc-pay-btn:disabled{opacity:.55;cursor:progress} 3863.ppc-pay-link{background:none;border:0;padding:0;font-size:13.5px;font-weight:600;color:#12A150;cursor:pointer;text-align:left} 3864.ppc-pay-link:hover:not(:disabled){text-decoration:underline} 3865.ppc-pay-link:disabled{opacity:.55;cursor:progress} 3866.ppc-these-cockpit{margin:12px 0 8px;max-width:820px} 3867.ppc-these-load{margin:16px 0;padding:18px 16px;border:1px solid #E3E8F0;border-radius:12px;background:#F9FBFD} 3868.ppc-these-load p{margin:10px 0 0;font-size:13px;color:#4B5E78} 3869.ppc-these-bar{display:block;height:6px;border-radius:99px;background:#E3E8F0;overflow:hidden;position:relative} 3870.ppc-these-bar::after{content:"";position:absolute;inset:0;width:40%;background:#12A150;border-radius:99px; 3871animation:ppcLoad 1.1s ease-in-out infinite} 3872@keyframes ppcLoad{0%{transform:translateX(-20%)}100%{transform:translateX(250%)}} 3873.ppc-packs{margin-top:36px} 3874.ppc-pack-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-top:14px} 3875.ppc-pack{border:1px solid #E3E8F0;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:6px;background:#F9FBFD} 3876.ppc-pack strong{font-size:14px} 3877.ppc-pack span{font-size:13px;color:#4B5E78} 3878.ppc-pack-btn{margin-top:6px;border:0;border-radius:8px;padding:9px 12px;background:#16233A;color:#fff; 3879font-size:13px;font-weight:700;cursor:pointer} 3880.ppc-pack-btn:hover{opacity:.9} 3881.ppc-foot{padding:32px 32px 0;max-width:1200px} 3882.ppc-logout{background:none;border:0;color:#8FA0B8;font-size:13px;font-weight:600;cursor:pointer;padding:0} 3883.ppc-logout:hover{color:#16233A} 3884.ppc-linkbtn{margin-top:6px;background:none;border:1px solid #E3E8F0;border-radius:8px;padding:4px 10px; 3885font-size:12px;color:#4B5E78;cursor:pointer} 3886@media (max-width:760px){ 3887 .ppc{padding-top:60px} 3888 .ppc-wrap,.ppc-foot{padding-left:18px;padding-right:18px} 3889 .ppc-sec{padding:28px 0} 3890 .ppc-nl-sectors .ppc-nl-row:nth-child(odd){border-right:0} 3891} 3892/* 04/10 â téléphone : la carte de construction laisse au film du sourcing sa largeur, 3893 et ne double plus sa barre (figée à 30 % pendant tout le sourcing alors que celle du 3894 film avance) ni l'étape en cours (déjà dans la liste juste dessous). */ 3895@media (max-width:640px){ 3896 .ppc-onb{padding:14px 12px} 3897 .ppc-onb.has-film .ppc-onb-phase,.ppc-onb.has-film .ppc-onb-bar{display:none} 3898 .ppc-onb.has-film .ppc-onb-steps{margin-top:10px} 3899} 3900`,Uw=Object.freeze(Object.defineProperty({__proto__:null,default:g1},Symbol.toStringTag,{value:"Module"})),f1="+33 6 83 10 72 86",mm="[email protected]",Rj=`tel:${f1.replace(/[^\d+]/g,"")}`;function Vw(){return null}
3900function Pj(t){return(t||"").split(/(\s|-)/).map(n=>n.length>1?n[0].toUpperCase()+n.slice(1).toLowerCase():n).join("")}function Ij(t){try{const n=new URL(t,"https://proplace.co");return n.pathname=n.pathname.replace(/\/open\/?$/,"/"),n.pathname.endsWith("/")||(n.pathname+="/"),`${n.pathname}${n.search}`}catch{return(t||"/").replace(/\/open\/?/,"/")}}function Dj(){var x,A;const{fund:t}=yp(),n=wp(t||""),{lang:r}=ae(),i=r==="fr",[s,a]=m.useState(null),[o,c]=m.useState(""),[l,d]=m.useState(null),[p,u]=m.useState(!1);ht({en:{title:s!=null&&s.company?`${s.company} â your Proplace deal flow`:"Your Proplace deal flow",description:"Deal flow + AI Corporate Developer, steered by Alexandre."},fr:{title:s!=null&&s.company?`${s.company} â votre deal flow Proplace`:"Votre deal flow Proplace",description:"Deal flow + AI Corporate Developer, piloté par Alexandre."}}),m.useEffect(()=>{if(!n)return;let w=!0;return fetch(`${Zt}/pour/page`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({fund_slug:n})}).then(S=>S.json()).then(S=>{if(w){if(!(S!=null&&S.ok)){c((S==null?void 0:S.error)||"introuvable");return}a(S)}}).catch(S=>{w&&c(String(S))}),()=>{w=!1}},[n]);const g=[s==null?void 0:s.first_name,s==null?void 0:s.last_name].filter(w=>!!w).map(Pj).join(" "),f=(s==null?void 0:s.company)||n,L=s==null?void 0:s.criteria,v=!!(L&&(L.lead||(x=L.angles)!=null&&x.length||(A=L.gate)!=null&&A.length)),y=s!=null&&s.cibles_url?Ij(s.cibles_url):"",h=((L==null?void 0:L.angles)||[]).slice(0,3).map(w=>w.title).filter(Boolean);async function b(w){if(!l){d(w),c("");try{const S=window.location.origin,j=await(await fetch(`${_e}/inbound/credits/checkout`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:((s==null?void 0:s.email)||"").trim().toLowerCase(),plan:w,company:f,website:(s==null?void 0:s.website)||"",fund_type:(s==null?void 0:s.fund)||f,interval:"year",success_url:`${S}${i?"/fr":""}/compte?plan=ok`,cancel_url:window.location.href})})).json();if(j!=null&&j.url){window.location.href=j.url;return}c(String((j==null?void 0:j.detail)||(j==null?void 0:j.error)||(i?"Paiement indisponible.":"Checkout unavailable.")))}catch(S){c(S instanceof Error?S.message:String(S))}d(null)}}return e.jsxs("div",{className:"pour-page",children:[e.jsx(zn,{}),e.jsxs("main",{className:"pour",children:[e.jsx("style",{children:zj}),e.jsxs("div",{className:"pour-grid",children:[e.jsxs("div",{className:"pour-who",children:[e.jsx("h1",{children:g||f}),!!((s==null?void 0:s.title)||"").trim()&&e.jsx("p",{className:"pour-role",children:s.title.trim()}),g&&f&&g.toLowerCase()!==f.toLowerCase()&&e.jsx("p",{className:"pour-co",children:f}),v&&e.jsx("div",{className:"pour-these",children:e.jsx(ll,{criteria:L,lang:i?"fr":"en",variant:"pour"})})]}),e.jsxs("aside",{className:"pour-pay",children:[e.jsx("p",{className:"pour-k",children:"Deal flow + AI Corporate Developer"}),e.jsx("p",{className:"pour-ksub",children:i?"Piloté par Alexandre â votre Corporate Developer humain.":"Steered by Alexandre â your human Corporate Developer."}),e.jsxs("div",{className:"pour-rdv",children:[e.jsx("p",{children:i?"Besoin dâaide ?":"Need a hand?"}),e.jsxs("p",{className:"pour-alex",children:["Alexandre â ",e.jsx("a",{href:Rj,children:f1})," · ",e.jsx("a",{href:`mailto:${mm}`,children:mm})]}),e.jsx("button",{type:"button",className:"pour-creneau",onClick:()=>u(!0),children:i?"Choisir un créneau":"Pick a slot"})]})]})]}),e.jsx("section",{className:"pour-offers","aria-label":i?"Les offres Proplace":"Proplace plans",children:e.jsx(hl,{context:"account",onTrialCta:()=>{window.location.href=y||(i?"/fr/#decouvrir":"/#decouvrir")},onRdvCta:()=>u(!0),accountExtras:{payBusy:!!l,onPay:w=>{b(w)}}})}),o&&e.jsx("p",{className:"pour-err",role:"alert",children:o}),y&&e.jsxs("a",{className:"pour-preview",href:y,children:[e.jsxs("span",{className:"pv-live",children:[e.jsx("i",{})," LIVE",e.jsx("span",{className:"pv-tick",children:i?"Aperçu du deal flow":"Deal flow preview"})]}),e.jsxs("span",{className:"pv-id",children:[e.jsx("b",{children:(f||"P").slice(0,1).toUpperCase()}),i?`Cibles pour ${f}`:`Targets for ${f}`]}),e.jsxs("span",{className:"pv-funnel",children:[e.jsxs("span",{children:[i?"à évaluer":"To screen"," 0"]}),e.jsxs("span",{className:"on",children:[i?"Retenues":"Kept"," ·"]}),e.jsxs("span",{children:[i?"Analysées":"Analyzed"," 0"]}),e.jsxs("span",{children:[i?"à trancher":"To decide"," 0"]})]}),e.jsx("span",{className:"pv-rows",children:(h.length?h.slice(0,2):[i?"Cible retenue â MATCH au crible":"Kept target â MATCH",i?"Cible en revue":"Target under review"]).map(w=>e.jsxs("span",{className:"pv-row",children:[e.jsx("em",{}),w]},w))}),e.jsx("span",{className:"pour-preview-cta",children:i?"Voir lâaperçu â":"See the preview â"})]})]}),e.jsx(Nt,{}),p&&e.jsx(Pi,{subject:(f||(s==null?void 0:s.website)||"").slice(0,80)||void 0,onClose:()=>u(!1)})]})}const zj=` 3901.pour-page{min-height:100dvh;display:flex;flex-direction:column;background:#fff} 3902.pour-page > .pour{flex:1 1 auto} 3903.pour-page > .ppf{margin-top:auto;flex:none} 3904.pour{max-width:1200px;width:100%;margin:0 auto;padding:28px 32px 48px;color:#0F1D33;box-sizing:border-box} 3905.pour,.pour *{box-sizing:border-box} 3906.pour-grid{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:36px;align-items:start;margin-bottom:36px} 3907@media (max-width:860px){ 3908 .pour-grid{grid-template-columns:1fr;gap:22px} 3909 .pour{padding:24px 18px 40px} 3910 .pour-pay{order:-1;position:static} 3911} 3912.pour-who h1{margin:0;font-size:clamp(28px,3.4vw,40px);font-weight:800;letter-spacing:-.03em;line-height:1.12} 3913.pour-role{margin:6px 0 0;font-size:15px;font-weight:600;color:#0F1D33} 3914.pour-co{margin:6px 0 0;font-size:15px;color:#4B5E78} 3915.pour-these{margin-top:22px} 3916.pour-offers{margin-bottom:30px} 3917.pour-pay{position:sticky;top:76px;padding:22px 18px 18px;border:1px solid #C9D6E6;border-radius:16px;background:#fff; 3918 box-shadow:0 16px 40px -16px rgba(15,29,51,.45)} 3919.pour-k{margin:0 0 4px;font-size:16px;font-weight:800;letter-spacing:-.02em;line-height:1.25;color:#0F1D33} 3920.pour-ksub{margin:0 0 16px;font-size:13px;line-height:1.45;color:#4B5E78} 3921.pour-btn{display:flex;flex-direction:column;align-items:flex-start;gap:4px;width:100%;margin:0 0 10px;padding:16px 18px;border:0;border-radius:12px;cursor:pointer;text-align:left;font:inherit;color:#fff; 3922 box-shadow:0 8px 20px -12px rgba(15,29,51,.55);transition:transform .12s,filter .12s,box-shadow .12s} 3923.pour-btn:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06);box-shadow:0 12px 24px -10px rgba(15,29,51,.5)} 3924.pour-btn:disabled{opacity:.45;cursor:default} 3925.pour-btn.std{background:#0F1D33} 3926.pour-btn.ent{background:#0E8A44} 3927.pour-btn em{font-style:normal;font-size:12px;font-weight:800;opacity:.78;letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px} 3928.pour-btn .pour-row,.pour-btn .pour-due{display:flex;justify-content:space-between;align-items:baseline;gap:12px;width:100%;font-size:13.5px;font-weight:600} 3929.pour-btn .pour-row i,.pour-btn .pour-due i{font-style:normal;font-weight:600;opacity:.78;font-size:12.5px} 3930.pour-btn .pour-row b{font-weight:800;font-size:15px;letter-spacing:-.02em} 3931.pour-btn .pour-due{margin-top:4px;padding-top:8px;border-top:1px solid rgba(255,255,255,.22)} 3932.pour-btn .pour-due b{font-weight:800;font-size:18px;letter-spacing:-.02em}
3933.pour-go{display:inline-block;margin-top:2px;padding-top:8px;border-top:0; 3934 font-size:14.5px;font-weight:800;letter-spacing:-.01em} 3935.pour-fine{margin:10px 0 0;font-size:11.5px;line-height:1.45;color:#7A8694} 3936.pour-rdv{margin-top:16px;padding-top:14px;border-top:1px solid #E3E8F0} 3937.pour-rdv p{margin:0 0 8px;font-size:12.5px;line-height:1.45;color:#4B5E78} 3938.pour-alex{font-size:12px!important;color:#7A8694!important} 3939.pour-alex a{color:#0F1D33;text-decoration:none;border-bottom:1px solid #E3E8F0} 3940.pour-alex a:hover{border-bottom-color:#0F1D33} 3941.pour-creneau{display:inline-block;margin-top:2px;padding:8px 12px;border:1px solid #E3E8F0;border-radius:8px;background:#fff;color:#4B5E78;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer} 3942.pour-creneau:hover{border-color:#0F1D33;color:#0F1D33} 3943.pour-err{padding:10px 12px;background:#FDECEC;color:#C0353A;border-radius:8px;font-size:13px;margin-bottom:16px} 3944.pour-preview{position:relative;display:block;max-width:720px;text-decoration:none;color:inherit; 3945 border:1px solid #E3E8F0;border-radius:12px;overflow:hidden;background:#F9FBFD; 3946 box-shadow:none;opacity:.88;transition:border-color .15s,opacity .15s} 3947.pour-preview:hover{border-color:#C9D6E6;opacity:1} 3948.pv-live{display:flex;align-items:center;gap:8px;padding:7px 14px;background:#F3F6F9;color:#4B5E78; 3949 font-size:10px;font-weight:800;letter-spacing:.12em;border-bottom:1px solid #E3E8F0} 3950.pv-live i{width:6px;height:6px;border-radius:50%;background:#E5484D} 3951.pv-tick{font-weight:600;letter-spacing:0;opacity:.8;text-transform:none} 3952.pv-id{display:flex;align-items:center;gap:8px;padding:10px 14px 6px;font-size:13.5px;font-weight:700;color:#4B5E78} 3953.pv-id b{width:22px;height:22px;border-radius:6px;background:#C9D6E6;color:#0F1D33;display:flex;align-items:center;justify-content:center;font-size:11px} 3954.pv-funnel{display:flex;gap:5px;padding:0 14px 8px;flex-wrap:wrap} 3955.pv-funnel span{padding:3px 8px;border-radius:999px;background:#EEF2F6;font-size:10.5px;font-weight:600;color:#7A8694} 3956.pv-funnel .on{background:#D8EDE0;color:#0E7F3F} 3957.pv-rows{display:flex;flex-direction:column;gap:6px;padding:0 14px 8px} 3958.pv-row{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #E3E8F0;border-radius:8px; 3959 font-size:12.5px;font-weight:600;color:#4B5E78;background:#fff} 3960.pv-row em{width:7px;height:7px;border-radius:50%;background:#9ED9B8;flex:none} 3961.pour-preview-cta{display:block;padding:10px 14px;background:transparent;color:#4B5E78; 3962 text-align:left;font-size:12.5px;font-weight:650;border-top:1px solid #E3E8F0} 3963.pour-preview:hover .pour-preview-cta{color:#0F1D33} 3964`,ac={name:"Global Innovation Index",edition:"2025",publisher:"WIPO (ONU)"},jd={CH:[66,1],SE:[62.6,2],US:[61.7,3],KR:[60,4],SG:[59.9,5],GB:[59.1,6],FI:[57.7,7],NL:[57,8],DK:[56.9,9],CN:[56.6,10],DE:[55.5,11],JP:[53.6,12],FR:[53.4,13],IL:[52.3,14],HK:[51.5,15],EE:[51.1,16],CA:[51.1,17],IE:[50.4,18],AT:[50.1,19],NO:[49.2,20],BE:[48.5,21],AU:[48,22],LU:[47.3,23],IS:[47,24],NZ:[45.5,25],CY:[45.5,26],MT:[45.4,27],IT:[44.9,28],ES:[44.6,29],AE:[44.2,30],PT:[43.9,31],CZ:[42,32],LT:[40.8,33],MY:[40.6,34],SI:[40.1,35],HU:[40,36],BG:[39.1,37],IN:[38.2,38],PL:[37.7,39],HR:[37.7,40],LV:[37.5,41],GR:[37.4,42],TR:[37.2,43],VN:[37.1,44],TH:[36.7,45],SA:[36,46],SK:[35.5,47],QA:[34.6,48],RO:[34.3,49],PH:[33.6,50],CL:[33.1,51],BR:[32.9,52],MU:[32.5,53],RS:[31.7,54],ID:[31.3,55],MA:[31.1,57],MX:[30.5,58],RU:[30.3,60],ZA:[30.1,61],BH:[30,62],MK:[29.8,63],ME:[29.8,64],JO:[29.7,65],UA:[29.7,66],AL:[29.6,67],UY:[28.8,68],OM:[28.7,69],CO:[28.5,71],KW:[28.2,73],MD:[27.4,74],TN:[27,76],AR:[26.8,77],PE:[26.5,80],BY:[25.1,85],EG:[24.7,86],SN:[23.8,89],LB:[23.6,90],BA:[26.3,92],LK:[22.9,93],PK:[22.1,99],KH:[21.9,100],GH:[21.9,101],KE:[21.4,103],RW:[21.1,104],NG:[21.1,105],BD:[21,106],CI:[19.7,110],DZ:[18.9,115],TZ:[17.5,121],UG:[17.1,124],ET:[14.4,134]};function Bj(t){if(!t||!jd[t])return 0;const n=jd[t][0];return n>=50?4:n>=40?3:n>=30?2:1}function Uj(t){return t&&jd[t]||null}const x1={fr:{toEval:"à évaluer",memo:"Mémo",ma:"M&A",levee:"Levée",why:"Pourquoi elle a passé le crible",how:"ð Comment Stan lâa trouvée",detected:"détectée le",hot:"ð¥ Signal chaud â son contexte vient de bouger, fenêtre de tir ouverte.",note:"Repérée dans la note",evaluate:"â¡ Ãvaluer",openMemo:"Voir le mémo â",source:"La source â",openFile:"Le dossier complet â",site:"ð Site â",lead:"in · dirigeant â",coLi:"in · société â",empty:"Rien ici dans cette fenêtre."},en:{toEval:"To evaluate",memo:"Memo",ma:"M&A",levee:"Round",why:"Why it made the cut",how:"ð How Stan foun
3964d it",detected:"detected on",hot:"ð¥ Hot signal â its context just moved, the window is open.",note:"Spotted in the note",evaluate:"â¡ Evaluate",openMemo:"Open the memo â",source:"View source â",openFile:"Full file â",site:"ð Site â",lead:"in · exec â",coLi:"in · company â",empty:"Nothing here in this window."}};function Vj(t,n){const r=x1[n];return t.kind==="op"?t.dealKind==="ma"?{label:r.ma,bg:"#16233A"}:{label:r.levee,bg:"#8f8f8a"}:t.kind==="memo"?{label:r.memo+(t.score!=null?" "+t.score:""),bg:"#0E7F3F"}:t.pub?{label:r.toEval,bg:"#0E7F3F"}:{label:l3(t,n),bg:$x[Bn(t)]||"#12A150"}}function Hj({objects:t,lang:n,onEvaluate:r,onOpen:i,max:s=60,sortBy:a="az",personal:o=!1,thumbs:c={},onThumb:l,onHover:d,openId:p=null,openAt:u=0,onUnfold:g}){const f=x1[n],[L,v]=m.useState({});m.useEffect(()=>{p&&(v(h=>({...h,[p]:!0})),window.setTimeout(()=>{const h=document.querySelector(`[data-cbrid="${CSS.escape(p)}"]`);h&&(h.scrollIntoView({behavior:"smooth",block:"nearest"}),h.classList.add("cbr-hit"),window.setTimeout(()=>h.classList.remove("cbr-hit"),2400))},80))},[p,u]);const y=t.slice().sort((h,b)=>a==="score"?(b.convictionScore??b.score??-1)-(h.convictionScore??h.score??-1)||h.name.localeCompare(b.name,"fr"):a==="date"&&(b.date||"").localeCompare(h.date||"")||h.name.localeCompare(b.name,"fr"));return y.length?e.jsxs("div",{className:"cbr",children:[e.jsx("style",{children:gm}),y.slice(0,s).map((h,b)=>{const x=Vj(h,n),A=!!L[h.id],w=typeof(h.convictionScore??h.score)=="number"?Math.round(h.convictionScore??h.score):null,S=Js(h.engine),E=h.hot||null,j=E?E.days:h.date?Math.max(0,Math.round((Date.now()-new Date(h.date+"T00:00:00").getTime())/864e5)):99,O=!!E||(h.engagement||0)>=20||h.isToday||j<=7&&(S==="jobs"||S==="funding"||S==="media"||h.dealKind==="levee"),k=E?`${E.emoji} ${n==="fr"?E.fr.charAt(0).toUpperCase()+E.fr.slice(1):E.en.charAt(0).toUpperCase()+E.en.slice(1)}`:S==="jobs"?n==="fr"?"ð¼ Recrute activement":"ð¼ Actively hiring":S==="funding"||h.dealKind==="levee"?n==="fr"?"ð° Vient de lever des fonds":"ð° Just raised":S==="media"?n==="fr"?"ð° Dans lâactualité":"ð° In the news":n==="fr"?"ð¥ Signal chaud":"ð¥ Hot signal";return e.jsxs("div",{className:"cbr-r"+(A?" open":""),"data-cbrid":h.id,onMouseEnter:()=>d&&d(h),onMouseLeave:()=>d&&d(null),children:[e.jsxs("button",{type:"button",className:"cbr-h",onClick:()=>{const _=!L[h.id];v(N=>({...N,[h.id]:!N[h.id]})),_&&g&&g(h)},children:[e.jsx("span",{className:"cbr-num",children:h.rank??b+1}),!o&&e.jsx("span",{className:"cbr-chip",style:{background:x.bg},children:x.label}),e.jsx("b",{className:"cbr-n",children:h.name}),O&&e.jsxs("span",{className:"cbr-hotb",children:[k,h.angle?" · "+h.angle.replace(/_/g," "):"",h.isToday?n==="fr"?" · aujourdâhui":" · today":j<=30?n==="fr"?` · il y a ${j} j`:` · ${j} d ago`:""]}),(h.tagline||h.reasoning)&&e.jsx("span",{className:"cbr-desc",children:(h.tagline||h.reasoning||"").slice(0,88)}),o&&h.kind==="target"&&e.jsx("span",{className:"cbr-st",title:n==="fr"?"Statut du funnel â se tranche sur votre page /cibles (bientôt ici)":"Funnel status â decided on your /cibles page (soon here)",children:["retenu","ana","pending","valide","ecarte"].map(_=>e.jsx("i",{className:Bn(h)===_?"on":"",style:Bn(h)===_?{background:$x[_]}:void 0,children:t1(_,n)},_))}),e.jsx("span",{className:"cbr-m",children:[h.cc?`${cl(h.cc)} ${Dn(h.cc,n)}`:"",h.sector,h.stage,h.amountEur?Br(h.amountEur,n):"",h.date].filter(Boolean).join(" · ")}),h.engine&&e.jsxs("span",{className:"cbr-eng",children:[zr(h.engine)," ",ud(h.engine,n)]}),(o||h.kind==="memo")&&w!=null&&e.jsxs("span",{className:"cbr-s",children:[w,"/100"]}),e.jsxs("span",{className:"cbr-go",role:"button",tabIndex:0,onClick:_=>{_.stopPropagation(),r(h)},onKeyDown:_=>{_.key==="Enter"&&(_.stopPropagation(),r(h))},children:["â¡ ",f.evaluate.replace("â¡ ","")]}),e.jsx("span",{className:"cbr-c",children:A?"â´":"â¾"})]}),A&&e.jsxs("div",{className:"cbr-b",children:[(h.tagline||h.headline)&&e.jsx("p",{className:"cbr-tag",children:h.tagline||h.headline}),(h.sector||h.stage||h.cc||h.angle)&&e.jsx("p",{className:"cbr-tags",children:[h.sector,h.stage,h.cc?Dn(h.cc,n):"",h.angle?"ICP · "+h.angle.replace(/_/g," "):""].filter(
3964Boolean).map(_=>e.jsx("i",{children:_},_))}),h.reasoning&&e.jsxs("p",{className:"cbr-why",children:[e.jsx("b",{children:f.why})," â ",h.reasoning]}),h.engine&&e.jsxs("p",{className:"cbr-how",children:[e.jsx("b",{children:f.how})," â ",zr(h.engine)," ",e.jsx("b",{children:ud(h.engine,n)}),Do(h.engine,n)?` · ${Do(h.engine,n)}`:"",h.date?` · ${f.detected} ${h.date}`:""]}),E&&e.jsxs("p",{className:"cbr-hot",children:["ð¯ ",e.jsx("b",{children:n==="fr"?"Fenêtre de tir":"Window of opportunity"})," â ",n==="fr"?E.fr:E.en," · ",n==="fr"?"signalé le":"flagged on"," ",E.date," · ",E.left>0?n==="fr"?`fenêtre encore ${E.left} j`:`${E.left} d left`:n==="fr"?"dernier jour":"last day",E.url&&e.jsxs(e.Fragment,{children:[" · ",e.jsx("a",{href:E.url,target:"_blank",rel:"noopener",children:n==="fr"?"voir la source â":"view source â"})]})]}),!E&&(h.engagement||0)>=20&&e.jsx("p",{className:"cbr-hot",children:f.hot}),h.noteTitle&&e.jsxs("p",{className:"cbr-how",children:["ð ",f.note," ",h.noteUrl?e.jsxs("a",{href:h.noteUrl.startsWith("http")?h.noteUrl:"https://proplace.co"+h.noteUrl,target:"_blank",rel:"noopener",children:["« ",h.noteTitle," » â"]}):e.jsxs(e.Fragment,{children:["« ",h.noteTitle," »"]})]}),(h.contactName||h.website||h.contactLinkedin||h.linkedinCompany)&&e.jsxs("p",{className:"cbr-links",children:[h.contactName&&e.jsxs("b",{children:["ð¤ ",h.contactName]}),h.website&&e.jsx("a",{href:h.website,target:"_blank",rel:"noopener",children:f.site}),h.contactLinkedin&&e.jsx("a",{href:h.contactLinkedin,target:"_blank",rel:"noopener",children:f.lead}),h.linkedinCompany&&e.jsx("a",{href:h.linkedinCompany,target:"_blank",rel:"noopener",children:f.coLi}),h.contactEmail&&e.jsxs("a",{href:"mailto:"+h.contactEmail,children:["â ",h.contactEmail]})]}),e.jsxs("div",{className:"cbr-act",children:[e.jsx("button",{type:"button",className:"cbr-btn main",onClick:()=>r(h),children:f.evaluate}),o&&h.kind==="target"&&l&&e.jsxs(e.Fragment,{children:[e.jsx("button",{type:"button",className:"cbr-btn thumb"+(c[h.id]==="yes"?" on":""),onClick:()=>l(h,"yes"),children:"ð"}),e.jsx("button",{type:"button",className:"cbr-btn thumb"+(c[h.id]==="no"?" on":""),onClick:()=>l(h,"no"),children:"ð"})]}),(h.memoUrl||h.kind==="memo"&&h.memoType!=="note"&&h.url)&&e.jsx("a",{className:"cbr-btn",href:h.memoUrl||h.url,target:"_blank",rel:"noopener",children:f.openMemo}),h.kind==="op"&&h.url&&e.jsx("a",{className:"cbr-btn",href:h.url,target:"_blank",rel:"noopener",children:f.source})]})]})]},h.id)}),y.length>s&&e.jsxs("p",{className:"cbr-empty",children:["+",y.length-s,"â¦"]})]}):e.jsxs("p",{className:"cbr-empty",children:[e.jsx("style",{children:gm}),f.empty]})}const gm=` 3965.cbr{display:flex;flex-direction:column;gap:0;border:1px solid var(--line,#E3E8F0);background:#fff} 3966.cbr-r{border-top:1px solid var(--line,#E3E8F0)} 3967.cbr-r:first-child{border-top:0} 3968.cbr-r.open{background:#FAFAF8} 3969.cbr-r.cbr-hit{outline:3px solid var(--green,#12A150);outline-offset:-2px;background:#E7F6EE} 3970.cbr-h{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border:none;background:transparent;cursor:pointer;font-family:inherit;text-align:left} 3971.cbr-h:hover .cbr-n{color:var(--green-dk,#12A150)} 3972.cbr-chip{flex:0 0 auto;font-size:12px;font-weight:600;color:#fff;padding:2px 7px} 3973.cbr-n{font-size:13.5px;color:var(--ink,#16233A);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px} 3974.cbr-m{flex:1;font-size:11.5px;color:var(--mid,#777);white-space:nowrap;overflow:hidden;text-overflow:ellipsis} 3975.cbr-s{font-size:12px;font-weight:800;color:var(--green-dk,#12A150);background:#E7F6EE;padding:1px 7px} 3976.cbr-eng{font-size:10.5px;color:var(--mid,#999);white-space:nowrap} 3977.cbr-num{flex:0 0 22px;width:22px;height:22px;border-radius:99px;background:var(--ink,#16233A);color:#fff;font-size:10.5px;font-weight:800;display:inline-flex;align-items:center;justify-content:center} 3978.cbr-hotb{flex:0 0 auto;background:#E5484D;color:#fff;font-size:9.5px;font-weight:800;padding:2px 8px;border-radius:99px;white-space:nowrap} 3979.cbr-desc{flex:1 2 auto;min-width:0;font-size:11px;
3979color:var(--mid,#888);white-space:nowrap;overflow:hidden;text-overflow:ellipsis} 3980.cbr-st{display:inline-flex;gap:3px;flex:0 0 auto} 3981.cbr-st i{font-style:normal;font-size:9px;font-weight:800;padding:2px 6px;color:var(--mid,#999);background:var(--bg,#F5F7FA);border-radius:99px} 3982.cbr-st i.on{color:#fff} 3983.cbr-btn.thumb{padding:5px 8px} 3984.cbr-btn.thumb.on{border-color:var(--green,#12A150);background:#E7F6EE} 3985@media(max-width:900px){.cbr-desc{display:none}} 3986@media(max-width:760px){ 3987 .cbr-h{flex-wrap:wrap;row-gap:6px;padding:11px 12px} 3988 .cbr-n{max-width:calc(100% - 130px)} 3989 .cbr-hotb{white-space:normal;text-align:left} 3990 .cbr-m{flex:1 1 100%;order:1;white-space:normal} 3991 .cbr-st{order:1;flex-wrap:wrap} 3992 .cbr-go{order:2;margin-left:auto;padding:8px 14px} 3993 .cbr-c{order:2} 3994} 3995.cbr-go{flex:0 0 auto;background:var(--green,#12A150);color:#fff;font-size:10.5px;font-weight:800;padding:3px 9px;cursor:pointer;border-radius:99px} 3996.cbr-go:hover{background:var(--green-dk,#0E7F3F)} 3997@media(max-width:760px){.cbr-eng{display:none}} 3998.cbr-c{color:var(--mid,#999);font-size:11px} 3999.cbr-b{padding:2px 14px 12px;display:grid;gap:7px} 4000.cbr-tag{margin:0;font-size:13px;line-height:1.55;color:var(--ink,#16233A)} 4001.cbr-tags{margin:0;display:flex;gap:6px;flex-wrap:wrap} 4002.cbr-tags i{font-style:normal;font-size:10.5px;font-weight:700;color:var(--sub,#444);background:var(--bg,#F5F7FA);border:1px solid var(--line,#E3E8F0);padding:2px 8px;border-radius:99px} 4003.cbr-why{margin:0;font-size:12.5px;line-height:1.5;color:var(--sub,#444);font-style:italic} 4004.cbr-how{margin:0;font-size:12px;line-height:1.5;color:var(--mid,#666)} 4005.cbr-how a{color:inherit;text-decoration:underline;text-underline-offset:2px} 4006.cbr-hot{margin:0;font-size:12.5px;font-weight:700;color:#96690E} 4007.cbr-links{margin:0;display:flex;gap:12px;flex-wrap:wrap;font-size:12px;align-items:center} 4008.cbr-links a{color:var(--ink,#16233A);text-decoration:underline;text-underline-offset:2px} 4009.cbr-act{display:flex;gap:8px;flex-wrap:wrap;margin-top:2px} 4010.cbr-btn{border:1px solid rgba(10,10,10,.35);background:#fff;color:var(--ink,#16233A);font-size:11.5px;font-weight:700;padding:5px 11px;cursor:pointer;text-decoration:none;font-family:inherit} 4011.cbr-btn:hover{border-color:var(--green,#12A150);color:var(--green-dk,#12A150)} 4012.cbr-btn.main{background:var(--green,#12A150);color:#fff;border-color:var(--green,#12A150)} 4013.cbr-btn.main:hover{background:var(--green-dk,#0E7F3F);color:#fff} 4014.cbr-empty{font-size:12.5px;color:var(--mid,#777);margin:6px 0} 4015`;function Yj(){var y;const{cc:t}=yp(),n=(t||"").toUpperCase().slice(0,2),{lang:r}=ae(),i=r==="fr",[s,a]=m.useState([]),[o,c]=m.useState(null),[l,d]=m.useState(!1);m.useEffect(()=>{let h=!1;return Promise.all([gr(),Db(),_p(),Fp(),sy()]).then(([b,x,A,w,S])=>{if(h)return;const E=(A||[]).map(O=>Ox(O,r)).filter(Boolean),j=[...(b&&b.recent_ops||[]).map(O=>fd(O,r)).filter(Boolean),...(x||[]).map(O=>Wb(O)).filter(Boolean),...E,...w];a(j.filter(O=>O.cc===n)),c(S),d(!0),Px(E,r).then(O=>{h||a(k=>[...k,...O.filter(_=>_.cc===n&&!k.some(N=>N.name===_.name))])}).catch(()=>{})}),()=>{h=!0}},[n,r]);const p=Uj(n),u=o&&o.countries&&((y=o.countries[n])==null?void 0:y.level)||0,g=u||Bj(n),f=m.useMemo(()=>s.filter(h=>h.kind==="op"),[s]),L=f.filter(h=>h.dealKind==="ma").length,v=h=>{window.location.href=(i?"/fr/":"/")+"?pin="+encodeURIComponent(h.name)};return e.jsxs("div",{className:"pays-page",children:[e.jsx("style",{children:Gj}),e.jsx(Di,{}),e.jsxs("main",{className:"pays-main",children:[e.jsxs("p",{className:"pays-kicker",children:[i?"FICHE PAYS":"COUNTRY SHEET",p&&e.jsxs(e.Fragment,{children:[" · ",i?"NIVEAU":"LEVEL"," ",g,"/4",u?i?" (niveau du jour)":" (todayâs level)":""," · ",ac.name," ",ac.edition," (",ac.publisher,")"]})]}),e.jsxs("h1",{children:[cl(n)," ",Dn(n,r)||n]}),e.jsxs("p",{className:"pays-meta",children:[f.length," ",i?"opérations dans la fenêtre":"deals in the window"," · ",L," M&A · ",f.length-L," ",i?"levées":"rounds",p&&e.jsxs(e.Fragment,{children:[" · GII ",p[0],"/100 · #",p[1]]})]}),e.jsx("p",{className:"pays-back",children:e.jsxs("a",{href:i?"/fr/":"/",children:["â ",i?"Le planisphère":"The world map"]})}),l?e.jsx(Hj,{objects:s,lang:r,max:120,sortBy:"date",onEvaluate:v,onOpen:v}):e.jsx("p",{className:"pays-meta",children:"â¦"})]}),e.jsx(Nt,{})]})}const Gj=` 4016.pays-main{max-width:1180px;margin:0 auto;padding:28px 24px 60px} 4017.pays-kicker{font-size:12px;font-weight:600;color:#12A150;margin:0 0 8px} 4018.pays-main h1{font-size:34px;margin:0 0 6px}
4019.pays-meta{color:var(--mid,#777);font-size:14px;margin:0 0 6px} 4020.pays-back{margin:0 0 18px;font-size:13px} 4021.pays-back a{color:var(--ink,#16233A);text-decoration:underline;text-underline-offset:3px} 4022`,Wj={retenu:1,ana:2,pending:3,valide:4,ecarte:5};function Uo(t){return Lt(t)?Wj[Bn(t)]??1:0}function Hw(t){return(t.angleId||(t.provQuery?"":t.gateAngleId)||"").replace(/_/g," ").trim()}function Qj(t){return t.memoUrl?(t.memoType||"").trim().toLowerCase()==="detailed"?2:1:0}function Yw(t){if(Bn(t)!=="pending"||!t.verdictDate)return null;const n=br(t.verdictDate);return n>=0&&n<3650?n:null}function Gw(t){return Bn(t)!=="pending"?null:(t.verdict||"").trim().toUpperCase().includes("CALL")?"auto":"cd"}function Ww(t){return(t.verdict||"").trim().toUpperCase()}const Qw={CALL:0,"CALL PENDING":.5,"CALL YES":.6,"CALL NO":.7,CONSIDER:1,MATCH:2,LEAD:2.5,MONITOR:3,"NO MATCH":4,PASS:5},Zw={MATCH:"#047857",LEAD:"#047857","NO MATCH":"#B91C1C",CALL:"#4AC67F","CALL PENDING":"#4AC67F","CALL YES":"#0E8A4F","CALL NO":"#B91C1C",CONSIDER:"#CA8A04",MONITOR:"#2563EB",PASS:"#DC2626"};function Zj(t){let n=(t.verdict||"").trim().toUpperCase();return(!n||n==="NEW"||n==="LEAD")&&(n=(t.cribleStatus||"").trim().toUpperCase()),!n||n==="NEW"||n==="LEAD"?null:n.includes("NO MATCH")?"NO MATCH":"MATCH"}const Kw={"CALL PENDING":"call","CALL YES":"v-yes","CALL NO":"v-no2",CONSIDER:"v-cons",MONITOR:"v-mon",PASS:"v-pass"};function Kj(t){const n=(t.verdict||"").trim().toUpperCase();return n.includes("CALL")?e1(t):n==="CONSIDER"||n==="MONITOR"||n==="PASS"?n:null}function Jw(t){const n=Zj(t);return n==="MATCH"?2:n==="NO MATCH"?1:0}function $w(t){switch(Kj(t)){case"CALL YES":return 6;case"CALL PENDING":return 5;case"CALL NO":return 4;case"CONSIDER":return 3;case"MONITOR":return 2;case"PASS":return 1;default:return 0}}const Xw={0:"--p0",1:"--p1",2:"--p2",3:"--p3",4:"--p4",5:"--p5",6:"--pf",7:"--pv"};function e8(t){return t<=3||t===6}function t8(t){return Uo(t)===3&&Qj(t)===1}function n8(t,n){const r={0:0,1:0,2:0,3:0,4:0,5:0,6:0,7:0};for(const i of t){if(i.kind==="op")continue;const s=Uo(i);r[s]++,s>=1&&r[7]++,n.has(i.id)&&r[6]++}return r}function r8(t,n,r){return t.kind==="op"?!1:n===6?r.has(t.id):n===7?Uo(t)>=1:Uo(t)===n}function Jj(t){return typeof t=="number"&&Number.isInteger(t)&&t>=0&&t<=7}const $j=new Map([["kept",1],["ana",2],["pending",3],["callyes",4],["rej",5],["fav",6]]);function Xj(t){return $j.get((t||"").trim().toLowerCase())}function i8(t,n){return(t[3]||0)>0?3:1}function L1(t){const n=(t||"").trim().toLowerCase();if(n==="ma"||n==="levee")return[n];if(n==="acquereur"||n==="acquereurs")return["ma"]}function v1(t){return((t==null?void 0:t.get("acq"))||"").trim()}function e4(t){return((t==null?void 0:t.get("only"))||"").trim()}const Qn=t=>(t||"").normalize("NFD").replace(/[\u0300-\u036f]/g,"").toLowerCase().replace(/[^a-z0-9]+/g,"");function fm(t){const n=(t||"").trim().match(/^(.*?)\s+for\s+(.+)$/i);if(!n)return null;const r=n[1].trim(),i=n[2].trim();return r&&i?{company:r,fund:i}:null}function s8(t,n,r){const i=Qn(n);if(!i)return;const s=t.find(d=>Qn(d.name||"")===i);if(s)return s;const a=Qn(r);if(!a)return;const o=t.find(d=>{const p=fm(d.name||"");return!!p&&Qn(p.company)===i&&Qn(p.fund)===a});if(o)return o;const c=fm(n);if(!c||Qn(c.fund)!==a)return;const l=Qn(c.company);return t.find(d=>Qn(d.name||"")===l)}const t4="pp-rdv-slot",n4=m.lazy(()=>Vr(()=>import("./AtelierV2Section-Cua_IQbO.js"),__vite__mapDeps([0,1,2,3,4]))),r4=` 4023/* Embed marchés / actualités : hauteur NATURELLE (pas de scroll interne liste). 4024 « Afficher plus » agrandit le bloc ; l'iframe suit via postMessage â parent. 4025 Scroll de page = document hôte uniquement. */ 4026html,body{height:auto!important;margin:0;overflow:hidden!important;padding-top:0!important} 4027#root,.pp-embed-root{height:auto!important;min-height:0;max-width:100%;overflow:hidden} 4028.atl2{height:auto!important;max-height:none!important;overflow:hidden!important;border-radius:0!important} 4029.atl2 .live-stack,.atl2.cibles .live-stack{position:relative!important;top:auto!important;border-radius:0!important;max-width:100%;overflow:hidden!important} 4030.atl2 .ticker,.atl2 .live-stack--cibles .ticker{ 4031 height:44px!important;max-height:44px!important;overflow:hidden!important; 4032 flex-wrap:nowrap!important;align-items:center} 4033.atl2 .ticker .win,.thesis-days,.pp-days{max-width:100%;overflow:hidden} 4034.pp-days .pp-dscroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:none} 4035.pp-days .pp-dscroll::-webkit-scrollbar{display:none} 4036.atl2.cibles .fzone>.conts{overflow-x:auto!important;overflow-y:hidden!important;flex-wrap:nowrap;scrollbar-width:none} 4037.atl2.cibles .conts .side{flex:none} 4038.atl2.cibles .readpane{overflow:visible!important;max-height:none!important;position:relative!important;top:auto!important} 4039.atl2 .app{height:auto!important;max-height:none!important;overflow:visible!important; 4040 display:flex;flex-direction:column} 4041.atl2 .list{overflow:visible!important;flex:none!important;min-height:0; 4042 max-height:none!important} 4043.atl2 .fzone{flex:none!important;height:auto!important; 4044 min-height:0!important;max-height:none!important; 4045 overflow:visible!important}
4046/* la SCÃNE contient sa carte (16/08 : « la carte déborde tous les menus ») â 4047 l'ancien layout 100dvh la bornait, la hauteur naturelle doit la laisser 4048 grandir jusqu'à max(carte, rail). */ 4049.atl2 .stage{height:auto!important;min-height:0!important; 4050 max-height:none!important;overflow:visible!important;align-items:stretch} 4051.atl2 .mapzone{min-height:460px} 4052/* Bouton Afficher plus â CTA encre, pas un lien vert */ 4053.atl2 .moregrp{display:flex;flex-direction:column;align-items:center;justify-content:center; 4054 gap:4px;width:100%;margin:0;padding:18px 16px 20px;border:0;border-top:1px solid #E3E8F0; 4055 background:#fff;cursor:pointer;font:inherit} 4056.atl2 .moregrp .more-label{display:inline-flex;align-items:center;justify-content:center; 4057 min-width:220px;padding:12px 22px;font-size:13.5px;font-weight:700;letter-spacing:-.01em; 4058 color:#fff;background:#16233A;border:1.5px solid #16233A;border-radius:0; 4059 transition:background .12s,border-color .12s,transform .12s} 4060.atl2 .moregrp:hover .more-label{background:#1B2F4E;border-color:#1B2F4E} 4061.atl2 .moregrp:active .more-label{transform:translateY(1px)} 4062.atl2 .moregrp .more-meta{font-family:var(--pp-body);font-size:12px;font-weight:600;color:#8FA0B8} 4063*{scrollbar-width:thin;scrollbar-color:rgba(15,29,51,.18) transparent} 4064`,oc=` 4065/* overflow-y:auto sur #root/.pp-cockpit (height:auto) crée un containing 4066 block sticky qui ne défile pas â Coller une URL / funnel ne collent plus. 4067 Le scroll reste celui du viewport. */ 4068html,body,#root,.pp-cockpit{height:auto!important;max-height:none!important; 4069 overflow:visible!important} 4070.pp-cockpit{--atelier-h:auto!important} 4071.atl2,.atl2 .app{height:auto!important;max-height:none!important; 4072 overflow:visible!important} 4073.atl2 .list,.atl2.cibles .desk-list .list,.atl2.cibles .desk-list{overflow:visible!important; 4074 max-height:none!important;flex:none!important} 4075`;function xm({forceUi:t}){var v;const n=typeof window<"u"?new URLSearchParams(window.location.search):null,r=(n==null?void 0:n.get("guest"))==="lp",i=typeof window<"u"&&(n==null?void 0:n.get("embed"))==="1",s=typeof window<"u"&&(n==null?void 0:n.get("chrome"))==="1"&&!r,a=typeof window<"u"&&!!new URLSearchParams(window.location.search).get("cb"),{lang:o}=ae(),c=t??d1(),[l,d]=m.useState(()=>{if(typeof window>"u")return!1;try{return localStorage.getItem("ppmap:navFolded")==="1"}catch{return!1}});m.useEffect(()=>{document.body.classList.toggle("pp-navfold",l);try{localStorage.setItem("ppmap:navFolded",l?"1":"0")}catch{}return()=>document.body.classList.remove("pp-navfold")},[l]),m.useEffect(()=>i&&!s?(document.body.classList.add("np-flush"),()=>document.body.classList.remove("np-flush")):(document.body.classList.add("pp-desk"),()=>document.body.classList.remove("pp-desk")),[i,s]),m.useEffect(()=>{if(!s&&!i)return;const y=x=>{if(!x.querySelector("style[data-hide-v1lnk]")){const A=x.createElement("style");A.setAttribute("data-hide-v1lnk","1"),A.textContent="a.v1lnk{display:none!important;visibility:hidden!important;pointer-events:none!important}",(x.head||x.documentElement).appendChild(A)}x.querySelectorAll("a.v1lnk").forEach(A=>A.remove())},h=()=>{try{y(document)}catch{}try{window.parent&&window.parent!==window&&y(window.parent.document)}catch{}};h();const b=window.setTimeout(h,400);return()=>window.clearTimeout(b)},[i,s]),m.useEffect(()=>{if(!i)return;const y=document.createElement("base");return y.target="_top",document.head.appendChild(y),()=>{try{document.head.removeChild(y)}catch{}}},[i]),ht({en:{title:"Proplace â The M&A evaluation workshop",description:"Every company our engines detected â live signals, 7-day firing windows â evaluate any of them against your criteria."},fr:{title:"Proplace â Lâatelier dâévaluation M&A",description:"Toutes les sociétés détectées par nos moteurs â signaux en direct, fenêtres de tir de 7 jours â évaluez-les selon vos critères."}});const p=m.useMemo(()=>{if(typeof window>"u")return{};const y=new URLSearchParams(window.location.search),h=y.get("ptab"),b=h&&h.trim()!==""?Number(h):NaN,x=y.get("dens"),A=(y.get("research")||"").trim(),w=(y.get("search")||y.get("eval")||"").trim(),S={};w&&(S.search=w);const E=e4(y);E&&(S.onlyCompany=E);const j=(y.get("secteurs")||"").split(",").map(pe=>
4075pe.trim()).filter(Boolean);j.length&&(S.sector=j);const O=v1(y);O&&(S.acquirer=O,S.win="all");const k=(y.get("win")||"").trim();(k==="1"||k==="7"||k==="30"||k==="all")&&(S.win=k);const _=(y.get("day")||y.get("jour")||"").trim();/^\d{4}-\d{2}-\d{2}$/.test(_)&&(S.day=_);const N=(y.get("type")||"").trim(),I=L1(N);I&&(S.dealKind=I);const ce=(y.get("source")||"").trim().toLowerCase(),K=(window.location.hash||"").replace(/^#/,"").trim().toLowerCase();return{source:A?{research:A}:ce==="ops"?"ops":"default",initialUi:{ptab:Jj(b)?b:Xj(y.get("tab")),dens:x==="liste"||x==="deplie"||x==="ligne"||x==="maxi"?x:void 0,modal:K==="rdv"?"rdv":K==="alertes"||K==="alert"?"alert":K==="criteres"||K==="crit"?"crit":K==="connecter"||K==="plug"?"plug":void 0},initialFilters:Object.keys(S).length?S:void 0}},[]);m.useEffect(()=>{var y;if((y=p.initialUi)!=null&&y.modal)try{window.history.replaceState(null,"",window.location.pathname+window.location.search)}catch{}},[(v=p.initialUi)==null?void 0:v.modal]);const u=typeof window<"u"&&((n==null?void 0:n.get("ticker"))==="0"||r),g=typeof window<"u"&&((n==null?void 0:n.get("onb"))==="0"||r);m.useEffect(()=>{if(typeof window>"u")return;const y=new URLSearchParams(window.location.search),h=(y.get("eval")||"").trim(),b=(y.get("similar")||"").trim(),x=(y.get("queue")||"").split("|").map(O=>O.trim()).filter(Boolean),A=(y.get("analyse")||"").trim(),w=(y.get("memo")||"").trim().toLowerCase(),S=w==="detailed",E=!!((y.get("sel")||y.get("only")||"").trim()&&(w==="instant"||w==="detailed"));if(!h&&!b&&!x.length&&!A&&!E)return;const j=window.setTimeout(()=>{if(x.length)try{window.dispatchEvent(new CustomEvent("ppmap:queue",{detail:{names:x}}))}catch{}if(A&&!E)try{window.dispatchEvent(new CustomEvent("ppmap:analyse",{detail:{name:A}}))}catch{}if(h&&!E){try{window.dispatchEvent(new CustomEvent("ppmap:evaluate",{detail:{name:h}}))}catch{}if(S)try{window.dispatchEvent(new CustomEvent("ppmap:deep-memo",{detail:{name:h}}))}catch{}}if(b){try{sessionStorage.setItem("pp:similar",b)}catch{}try{window.dispatchEvent(new CustomEvent("ppmap:similar",{detail:{name:b}}))}catch{}}},600);return()=>window.clearTimeout(j)},[]);const f=c==="v2"?e.jsx(m.Suspense,{fallback:e.jsx("div",{style:{height:"var(--atelier-h, 100dvh)"}}),children:e.jsx(n4,{source:p.source,initialUi:p.initialUi,initialFilters:p.initialFilters,capsOverride:{...u?{showTicker:!1}:null,...g?{showOnb:!1}:null}})}):e.jsx(c1,{});if(m.useEffect(()=>{if(!i)return;const y=h=>{if(!(!(h.ctrlKey||h.metaKey)||h.altKey)&&(h.key||"").toLowerCase()==="p"){h.preventDefault();try{window.print()}catch{}}};return document.addEventListener("keydown",y,!0),()=>document.removeEventListener("keydown",y,!0)},[i]),m.useEffect(()=>{if(!i||s||r||In())return;const y=()=>{try{const x=Math.ceil(Math.max(document.documentElement.scrollHeight,document.body.scrollHeight,document.documentElement.offsetHeight));x>0&&window.parent&&window.parent!==window&&window.parent.postMessage({type:"pp-ck-h",h:x},"*")}catch{}};y();const h=typeof ResizeObserver<"u"?new ResizeObserver(()=>y()):null;h&&h.observe(document.documentElement);const b=window.setInterval(y,800);return window.addEventListener("load",y),()=>{h==null||h.disconnect(),window.clearInterval(b),window.removeEventListener("load",y)}},[i,s,r]),i&&r)return e.jsxs("div",{className:"pp-cockpit",style:{"--pp-gap":"0px","--atelier-h":"auto"},children:[e.jsx("style",{children:`html,body{padding-top:0!important;margin:0;overflow:auto!important}#root{min-height:0}${oc}.pp-cockpit{--pp-live-h:0px;--demand-h:0px}.atl2.cibles .listhead{top:0!important}`}),f]});if(i&&In())return e.jsxs("div",{className:"pp-cockpit",style:{"--pp-gap":"0px","--atelier-h":"auto"},children:[e.jsx("style",{children:`html,body{padding-top:0!important;margin:0;overflow:auto!important}#root{min-height:0}${oc}`}),f]});if(i&&!s)return e.jsxs("div",{className:"pp-embed-root",style:{height:"auto","--atelier-h":"auto","--pp-gap":"0px"},children:[e.jsx("style",{children:r4}),f]});const L=(s?60:68)-(l?34:0);return e.jsxs("div",{className:"pp-cockpit",style:{"--pp-gap":`${L}px`},children:[e.jsx("style",{children:i4}),s&&e.jsx("style",{children:oc}),s?e.jsx(Di,{active:"direct"}):e.jsx(zn,{}),!s&&e.jsx("button",{type:"button",className:"pp-navfold-btn",onClick:()=>d(y=>!y),"aria-expanded":!l,title:l?"Déplier lâen-tête":"Replier lâen-tête",children:l?"â":"â"}),e.jsxs("div",{style:{maxWidth:"none",margin:0,padding:"0 0 24px"},children:[f,s&&a&&e.jsx("div",{id:t4})]}),e.jsx(Nt,{})]})}const i4=`
4076/* HAUTEUR DE L'APP â « il faut allonger l'app » (Antoine, 09/08). 4077 La boite est fixe et seule la liste a le droit d'y grandir. Mesure en prod 4078 avant correctif, fenetre 900 px : les douze bandeaux permanents (519 px) plus 4079 la carte (316 px) depassaient a eux seuls la boite (832 px) â la liste 4080 tombait a ZERO ligne. C'est le produit qui disparaissait, pas un detail. 4081 D'ou un plancher : sous 1000 px la page defile, au lieu d'ecraser la liste. 4082 Reserve aux grands ecrans â sur telephone la mise en page est empilee et un 4083 plancher de 1000 px n'aurait aucun sens. */ 4084.pp-cockpit { --atelier-h: calc(100dvh - var(--pp-gap)); } 4085@media (min-width: 861px) { 4086 .pp-cockpit { --atelier-h: max(1000px, calc(100dvh - var(--pp-gap))); } 4087} 4088/* Liste courte : le pied de page va en bas de l'écran, pas sous la dernière 4089 carte. Le header sticky est DANS la colonne quand le body est np-flush 4090 (/cibles) ; sinon la nav fixe a déjà réservé --pp-gap. */ 4091.pp-cockpit{min-height:calc(100dvh - var(--pp-gap, 60px)); 4092 display:flex;flex-direction:column} 4093body.np-flush .pp-cockpit{min-height:100dvh} 4094.pp-cockpit>.ppf{margin-top:auto;flex:none;width:100%} 4095/* IMPRESSION : la nav du site et le pied de page ne veulent rien dire sur 4096 papier ; la mention « lien prive » si, on la garde. Le decalage de body 4097 (index.css pose padding-top:60px pour la nav fixe) doit sauter aussi, sinon 4098 chaque page imprimee commence par 60 px de blanc. */ 4099@media print { 4100 body { padding-top: 0 !important; } 4101 .pp-nav, .pp-navfold-btn, .pp-foot, footer { display: none !important; } 4102 /* le planificateur de rendez-vous occupait la derniere page imprimee : un 4103 document que le dirigeant pose devant son comite n'a pas a se terminer par 4104 un choix de creneau. La mention « lien prive », elle, reste : elle dit d'ou 4105 vient la selection et qu'elle ne se transfere pas. */ 4106 #pp-rdv-slot { display: none !important; } 4107} 4108body.pp-navfold { padding-top: 26px; } 4109body.pp-navfold .pp-nav { height: 26px; } 4110body.pp-navfold .pp-nav-end, 4111body.pp-navfold .pp-nav-min-r { display: none; } 4112body.pp-navfold .pp-nav-brand img { height: 15px; } 4113.pp-navfold-btn { 4114 position: fixed; z-index: 61; top: 18px; right: 14px; 4115 width: 24px; height: 24px; line-height: 1; 4116 display: flex; align-items: center; justify-content: center; 4117 font: 13px/1 system-ui; color: var(--sub, #4B5E78); 4118 background: #fff; border: 1px solid rgba(0,0,0,.10); border-radius: 7px; 4119 cursor: pointer; opacity: .55; transition: opacity .15s ease, top .15s ease; 4120} 4121.pp-navfold-btn:hover { opacity: 1; color: var(--ink, #16233A); } 4122body.pp-navfold .pp-navfold-btn { top: 2px; } 4123@media (max-width: 760px) { .pp-navfold-btn { display: none; } } 4124`,Lm="pp-socialcard-style",vm="20261009";let os=null;function s4(){if(!os)if(document.getElementById(Lm))os=Promise.resolve(!0);else{const t=n=>fetch(n).then(r=>r.ok?r.text():"");os=t(`/social-card.css?v=${vm}`).catch(()=>"").then(n=>n||t(`https://proplace.co/social-card.css?v=${vm}`).catch(()=>"")).then(n=>{if(!n)return!1;const r=document.createElement("style");return r.id=Lm,r.textContent=n,document.head.appendChild(r),!0}).catch(()=>(os=null,!1))}return os}function W(t,n,r){const i=document.createElement(t);return n&&(i.className=n),r!==void 0&&(i.textContent=r),i}const a4=t=>t.length<=13?"":t.length<=20?"sm":"xs",o4=new Set(["rachat","levee_une","en_cours","presse","recrutement","nomination","signal"]),l4=new Set(["acquired","raise","pending","press","hiring","appointment"]),b1=["january","february","march","april","may","june","july","august","september","october","november","december"],c4={fr:{rachat:"M&A",en_cours:"M&A",levee_une:"Levée de fonds",presse:"Actualité",recrutement:"Recrutement",nomination:"Nomination",signal:"Signal"},en:{rachat:"M&A",en_cours:"M&A",levee_une:"Funding round",presse:"News",recrutement:"Hiring",nomination:"Appointment",signal:"Signal"}},d4={fr:{buyer:"Acquéreur",target:"Cible",verb:"acquiert",quote:"à la une",source:"Source",tag:"Du signal à la signature."},en:{buyer:"Acquirer",target:"Target",verb:"acquires",quote:"Headline",source:"Source",tag:"From signal to signature."}},p4=new Set(["ma","vc","rh","actu","hr","news"]),u4=new Set(["montant","amount"]);function Vo(t){return String(t||"").normalize("NFKD").replace(/[Ì-ͯ]/g,"").toLowerCase().replace(/[^a-z0-9]/g,"")}function ls(t,n){const r=Vo(t);
4124return!!r&&r===Vo(n)}function lc(t){return/\d/.test(t)&&/[â¬$£]|\bCHF\b|\b(?:M|Md|Mds|bn|k)\b/i.test(t)}function h4(t){let n=String(t||"").trim().toLowerCase();for(const r of b1)n.includes(r)&&(n=n.split(r).join(r.charAt(0).toUpperCase()+r.slice(1)));return n}function bm(t,n,r){return t.length<=n?"":t.length<=r?"s-m":"s-s"}function m4(t){const n=t.band;return o4.has(t.kind)&&!(n&&(n.type==="top"||n.type==="list"))}function g4(t){const n=t.kind,r=String(t.word||"").trim(),i=l4.has(r.toLowerCase())||b1.some(k=>String(t.date_fr||"").toLowerCase().includes(k))?"en":"fr",s=c4[i][n]||String(t.kicker||"").trim(),a=t.band||null,o=a&&a.type==="deal"&&a.left&&a.right?a:null,c=String(t.kicker||"").trim(),l=String(t.who||"").trim(),d=String(t.what||"").trim(),p=String(t.meta||"").trim(),u=a&&a.type==="rows"?(a.cells||[]).slice(0,3):[];let g=o?String(o.amount||"").trim():"";if(!g&&c&&lc(c)&&(g=c),!g){const k=u.find(_=>u4.has(Vo(_.k))&&lc(String(_.v||"")));k&&(g=String(k.v||"").trim())}const f=n==="presse"&&!l,L=!r||n==="presse"||o?"":r,v=g||L,y=g&&L&&n!=="levee_une"?L:"",h=[];for(const k of u){const _=String(k.v||"").trim();!_||ls(_,l)||ls(_,g)||h.push({k:String(k.k||"").trim(),v:_})}const b=[l,g,s,L,...o?[o.left||"",o.right||""]:[],...h.map(k=>k.v)],x=[],A=[c&&!lc(c)&&!p4.has(Vo(c))?c:"",...p.split(" · ")].map(k=>k.trim());for(const k of A)k&&!b.some(_=>ls(k,_))&&!x.some(_=>ls(k,_))&&x.push(k);const w=f?d:"";let S=a&&a.type==="quote"?String(a.text||"").trim():"";S&&ls(S,w||d)&&(S="");const E=t.media&&t.media.items||[];let j="";f&&E[0]&&String(E[0].kind||"").toLowerCase()==="name"&&(j=String(E[0].alt||E[0].text||"").trim());const O=o||f?[]:E.slice(0,2).filter(k=>String(k.kind||"").toLowerCase()==="logo"&&k.src).map(k=>({src:String(k.src),alt:String(k.alt||k.cap||"")}));return{lang:i,cat:s,date:h4(t.date_fr),ma:n==="rachat"||n==="en_cours",eye:y,hero:v,heroIsAmount:!!g,title:o||f?"":l,head:w,ctx:o||f?"":d,meta:x.join(" · "),source:j,deal:o?{left:String(o.left||""),leftSub:String(o.left_sub||""),right:String(o.right||""),rightSub:String(o.right_sub||"")}:null,facts:h,quote:S,logos:O}}function f4(t,n="x"){const r=g4(t),i=d4[r.lang],s=r.facts.length?"facts":r.quote?"quote":r.logos.length?"logos":"",a=W("div",`ppcard ${n==="li"?"f-li":"f-x"} v2 k-${t.kind}${r.ma?" bg-ma":""}`),o=W("div","s-hd"),c=document.createElement("img");c.className="s-logo",c.src="https://proplace.co/logo.png",c.alt="Proplace",o.appendChild(c),o.appendChild(W("span","s-sp"));const l=W("span","s-lab");r.cat&&l.appendChild(W("span","s-cat",r.cat)),r.date&&l.appendChild(W("span","s-dt",r.date)),o.appendChild(l),a.appendChild(o);const d=W("div",s?"s-body":"s-body s-solo"),p=W("div","s-txt");if(r.eye&&p.appendChild(W("div","s-eye",r.eye)),r.hero&&p.appendChild(W("div",r.heroIsAmount?"s-hero":"s-hero s-w",r.hero)),r.deal&&r.meta&&p.appendChild(W("div","s-meta",r.meta)),r.deal){const f=(v,y,h)=>{const b=W("div","s-pt");b.appendChild(W("span","s-role",v));const x=bm(y,14,24);return b.appendChild(W("span",x?`s-pn ${x}`:"s-pn",y)),h&&b.appendChild(W("span","s-ps",h)),b},L=W("div","s-deal");L.appendChild(f(i.buyer,r.deal.left,r.deal.leftSub)),L.appendChild(W("span","s-verb",i.verb)),L.appendChild(f(i.target,r.deal.right,r.deal.rightSub)),p.appendChild(L)}if(r.head&&p.appendChild(W("div","s-title s-head",r.head)),r.title){const f=bm(r.title,18,28);p.appendChild(W("div",f?`s-title ${f}`:"s-title",r.title))}if(r.ctx&&p.appendChild(W("div","s-ctx",r.ctx)),r.meta&&!r.deal&&p.appendChild(W("div","s-meta",r.meta)),r.source&&p.appendChild(W("div","s-src",`${i.source} · ${r.source}`)),d.appendChild(p),s){const f=W("div","s-aside");if(s==="facts"){const L=W("div","s-facts");for(const v of r.facts){const y=W("div","s-f");v.k&&y.appendChild(W("span","s-k",v.k)),y.appendChild(W("span","s-v",v.v)),L.appendChild(y)}f.appendChild(L)}else if(s==="quote"){const L=W("div","s-quote");L.appendChild(W("span","s-qk",i.quote)),L.appendChild(W("div","s-qt",r.quote)),f.appendChild(L)}else{const L=W("div","s-logos");for(const v of r.logos){const y=W("div","s-tile"),h=document.createElement("img");h.src=v.src,h.alt=v.alt,y.appendChild(h),L.appendChild(y)}f.appendChild(L)}d.appendChild(f)}a.appendChild(d);const u=W("div","s-ft"),g=W("span","s-cta","proplace.co/actualites");return g.appendChild(W("span","s-arr","â")),u.appendChild(g),u.appendChild(W("span","s-tag",i.tag)),a.appendChild(u),a}function x4(t){if(t.card)return t.card;if(t.kind!=="signal")return null;const n=t.cls==="pr";return!t.text&&!t.name?null:{kind:n?"presse":"signal",kicker:n?"Actualité":"Signal",tint:n?"t-w":"t-k",date_fr:"",word:t.big||t.label.replace(/^[^\s]+\s/,""),who:[t.name,t.sector].filter(
4124Boolean).join(" · ")||null,what:null,band:n&&t.text?{type:"quote",text:t.text}:null}}function L4(t){if(!t||!t.items||!t.items.length)return null;const n=t.layout||(t.items.length>=2?"duo":"solo"),r=W("div",`media ${n}`);for(const i of t.items.slice(0,2)){const s=(i.kind||"").toLowerCase();if(s==="name"){const c=(i.text||i.alt||"").trim();if(!c)continue;const l=W("div","im name");i.color&&/^#[0-9A-Fa-f]{6}$/.test(i.color)&&(l.style.background=i.color),l.appendChild(W("span",i.name_cls?`nm ${i.name_cls}`:"nm",c)),i.sub&&l.appendChild(W("em","cap2",i.sub)),i.cap&&l.appendChild(W("span","cap",i.cap)),r.appendChild(l);continue}if(!i.src)continue;const a=W("div",s==="logo"?"im logo":s==="mono"?"im mono":"im"),o=document.createElement("img");o.src=i.src,o.alt=i.alt||i.cap||"",a.appendChild(o),i.sub&&a.appendChild(W("em","cap2",i.sub)),i.cap&&a.appendChild(W("span","cap",i.cap)),r.appendChild(a)}return r.childNodes.length?r:null}function v4(t){const n=W("div","band");if(t.type==="deal"){const r=W("div","deal"),i=(s,a)=>{if(!a)return W("span","lg",s);const o=W("span","side");return o.appendChild(W("span","lg",s)),o.appendChild(W("em","lgs",a)),o};return t.left&&r.appendChild(i(t.left,t.left_sub)),t.left&&t.right&&r.appendChild(W("span","ar","â")),t.right&&r.appendChild(i(t.right,t.right_sub)),t.amount&&r.appendChild(W("span","amt",t.amount)),r.childNodes.length?(n.appendChild(r),n):null}if(t.type==="rows"){const r=W("div","rows");for(const i of(t.cells||[]).slice(0,3)){const s=String(i.v||""),a=W("div",`r1${s.length<=6?"":s.length<=12?" s":" s2"}`);a.appendChild(W("b",void 0,s)),a.appendChild(W("span",void 0,i.k||"")),r.appendChild(a)}return r.childNodes.length?(n.appendChild(r),n):null}if(t.type==="top"){const r=W("div","top");return(t.rows||[]).forEach((i,s)=>{const a=W("div","tr");a.appendChild(W("span","tn",String(s+1))),a.appendChild(W("span","tl",i.label||"")),i.amount&&a.appendChild(W("span","ta",i.amount)),r.appendChild(a)}),r.childNodes.length?(n.appendChild(r),n):null}if(t.type==="list"){const r=(t.rows||[]).length,i=Math.min(3,Math.max(1,t.cols||(r>28?3:r>10?2:1))),s=W("div",`list c${i}`);for(const a of t.rows||[]){if(!a.label)continue;const o=W("div","li");o.appendChild(W("span","ln",a.label)),a.amount&&o.appendChild(W("span","la",a.amount)),s.appendChild(o)}return s.childNodes.length?(n.appendChild(s),n):null}return t.type==="quote"&&t.text?(n.appendChild(W("div","quote",t.text)),n):null}async function b4(t,n){if(!await s4())return null;const r=x4(t);return r?y4(r,n):null}function y4(t,n){var b,x;const s=n/1200,a=W("div","ppstage");if(a.style.width=`${n}px`,a.style.height=`${Math.round(675*s)}px`,m4(t)){const A=f4(t,"x");return A.style.transform=`scale(${s})`,a.appendChild(A),a}const o=t.band?v4(t.band):null,c=L4(t.media),l=c?"":" nomedia",d=((x=(b=t.band)==null?void 0:b.rows)==null?void 0:x.length)||0,p=d>=4?" crowded":"",u=W("div",`ppcard f-x ${t.tint}${l}${p}${o?"":" noband"}`);d&&u.setAttribute("data-n",String(d)),u.style.transform=`scale(${s})`;const g=W("div","hd"),f=W("span","lv");f.appendChild(W("i")),f.appendChild(document.createTextNode("LIVE")),g.appendChild(f),g.appendChild(W("span",t.kicker_cls?`kk ${t.kicker_cls}`:"kk",t.kicker)),g.appendChild(W("span","sp")),g.appendChild(W("span","dt",t.date_fr||"")),u.appendChild(g);const L=W("div","main");c&&L.appendChild(c);const v=W("div","txt");v.appendChild(W("div",`word ${t.word_cls??a4(t.word)}`,t.word)),t.who&&v.appendChild(W("div","who",t.who)),t.what&&v.appendChild(W("div","said",t.what)),t.meta&&v.appendChild(W("div","who-meta",t.meta)),L.appendChild(v),u.appendChild(L),o&&u.appendChild(o);const y=W("div","ft");y.appendChild(W("span","u","proplace.co/actualites"));const h=document.createElement("img");return h.src="https://proplace.co/logo.png",h.alt="Proplace",t.tint!=="t-w"&&(h.className="inv"),y.appendChild(h),u.appendChild(y),a.appendChild(u),a}const ym="pp-lmod-style-v3",ri='var(--pp-body,"Instrument Sans",system-ui,-apple-system,sans-serif)',j4=` 4125.pp-lmod{position:fixed;inset:0;z-index:1200;background:rgba(15,29,51,.55);display:flex; 4126align-items:center;justify-content:center;padding:22px; 4127font-family:var(--pp-body,"Instrument Sans",system-ui,-apple-system,sans-serif);color:#0F1D33} 4128.pp-lmod,.pp-lmod *{box-sizing:border-box} 4129.pp-lcard{width:min(880px,100%);max-height:88vh;overflow:auto;background:#fff;border-radius:12px; 4130box-shadow:0 30px 80px rgba(15,29,51,.4)} 4131/* LA GRAMMAIRE DE LA LIGNE DÃPLIÃE (16/08) : texte en mesure de lecture à 4132 gauche, carte fixe à droite, une rangée de chips méta, une rangée d'actions. */ 4133.pp-lgrid{display:flex;gap:20px;padding:16px 0 4px;align-items:flex-start} 4134.pp-lmain{flex:1;min-width:0} 4135.pp-lside{flex:none;width:340px} 4136@media (max-width:760px){.pp-lgrid{flex-direction:column}.pp-lside{width:100%}} 4137.pp-ldec h4{margin:0 0 8px;font-size:16px;font-weight:700;letter-spacing:-.01em;line-height:1.3} 4138.pp-ldec p{margin:0 0 10px;font-size:13.5px;color:#33404E;line-height:1.7} 4139.pp-ldec a{color:#1E5FCC;text-decoration:none;border-bottom:1px solid #C7DDFA} 4140.pp-lhead{margin:0;font-size:15.5px;font-weight:600;font-style:italic;line-height:1.5;color:#1E2A38} 4141.pp-lmeta{display:flex;gap:6px;flex-wrap:wrap;margin:12px 0 0} 4142.pp-lmeta span,.pp-lmeta button{font-family:${ri};font-size:12px; 4143color:#4B5E78;background:none;border:1px solid #E3E8F0;border-radius:4px;padding:3px 8px;font-weight:600}
4144.pp-lmeta button{cursor:pointer} 4145.pp-lmeta button:hover{color:#0F1D33;border-color:#0F1D33} 4146.pp-lsrc{display:inline-block;margin-top:10px;font-family:${ri};font-size:10.5px; 4147color:#4B5E78;text-decoration:none;border-bottom:1px dotted #B9C6D2} 4148.pp-lsrc:hover{color:#0F1D33;border-bottom-color:#0F1D33} 4149.pp-lfoot{display:flex;gap:8px;justify-content:flex-end;padding:12px 0 0;margin-top:12px; 4150border-top:1px solid #E3E8F0} 4151.pp-lh{display:flex;align-items:center;gap:11px;padding:16px 20px;border-bottom:1px solid #E3E8F0} 4152.pp-lh b{font-size:19px;font-weight:600;letter-spacing:-.02em} 4153.pp-lh .pp-sp{flex:1} 4154.pp-lx{background:none;border:0;font-size:22px;color:#8496A8;cursor:pointer;line-height:1;padding:0} 4155.pp-lsig{font-size:10.5px;font-weight:600;color:#fff;border-radius:3px;padding:4px 9px} 4156.pp-lsig.lv{background:#E5484D}.pp-lsig.ma{background:#7C3AED}.pp-lsig.jb{background:#E0A81E} 4157.pp-lsig.pr{background:#0F1D33}.pp-lsig.nt{background:#1E5FCC}.pp-lsig.fil{background:#12A150} 4158.pp-lb2{padding:6px 20px 20px} 4159.pp-lacts{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px} 4160.pp-lbtn{background:#12A150;color:#fff;border:0;border-radius:8px;padding:9px 14px; 4161font-size:12.5px;font-weight:600;cursor:pointer;font-family:inherit;text-decoration:none; 4162display:inline-block} 4163.pp-lbtn:hover{background:#0E8A44;text-decoration:none} 4164.pp-lghost{background:#fff;border:1px solid #C9D6E6;border-radius:8px;padding:9px 14px; 4165font-size:12.5px;font-weight:600;cursor:pointer;font-family:inherit;color:#0F1D33; 4166text-decoration:none;display:inline-block} 4167.pp-lghost:hover{border-color:#0F1D33;background:#F5F7FA;text-decoration:none} 4168.pp-lcardimg{min-height:150px;border-radius:8px;background:#0E8A44;color:#fff; 4169padding:14px 16px 12px;margin-top:4px;overflow:hidden;display:flex;flex-direction:column} 4170.pp-lclive{font-family:${ri};font-size:12px;background:#E5484D; 4171border-radius:3px;padding:4px 8px;display:block;width:fit-content;margin-bottom:12px;font-weight:600} 4172.pp-lcw{display:block;font-size:34px;font-weight:700;letter-spacing:-.04em;line-height:1.05; 4173text-transform:uppercase;word-break:break-word} 4174.pp-lcq{display:block;font-size:14px;font-style:italic;line-height:1.45;opacity:.92;margin-top:8px} 4175.pp-lcs{display:block;font-family:${ri};font-size:12px;opacity:.8;margin-top:8px;font-weight:600} 4176.pp-lcm{display:block;margin-top:auto;padding-top:10px;text-align:right; 4177font-family:${ri};font-size:9px;opacity:.7} 4178.pp-ltag{display:block;margin-top:9px;font-family:${ri};font-size:12px;color:#8496A8;font-weight:600} 4179/* l'emplacement de la VRAIE carte (live/card.ts) â bordé, pour qu'on voie que 4180 c'est un objet fini et pas un bloc de la page */ 4181.pp-lcardhold{margin-top:4px;border:1px solid #E3E8F0;overflow:hidden;line-height:0} 4182`,w4={fr:{s1none:"Signal détecté par nos moteurs â pas de lien public.",ev:"â¡ Ãvaluer cette société",search:"ð Chercher ce signal dans mon deal flow",similar:"𧬠Trouver des similaires",rs:"ð Extraire les sociétés de l'article",explore:"ð Explorer les sociétés pertinentes",cockpit:"Voir dans le cockpit",source:"Voir la source",x:"ð Voir sur X",li:"in Suivre sur LinkedIn",close:"Fermer"},en:{s1none:"Signal detected by our engines â no public link.",ev:"â¡ Evaluate this company",search:"ð Find this signal in my deal flow",similar:"𧬠Find similar companies",rs:"ð Extract companies from this article",explore:"ð Explore relevant companies",cockpit:"Open in the cockpit",source:"See the source",x:"ð See on X",li:"in Follow on LinkedIn",close:"Close"}};function k4(){if(document.getElementById(ym))return;const t=document.createElement("style");t.id=ym,t.textContent=j4,document.head.appendChild(t)}function A4(t,n={}){k4();const r=n.lang==="en"?"en":"fr",i=w4[r],s=document.createElement("div");s.className="pp-lmod";const a=document.createElement("div");a.className="pp-lcard",s.appendChild(a);const o=document.createElement("div");o.className="pp-lh";const c=document.createElement("span");c.className="pp-lsig "+t.cls,c.textContent=t.label,o.appendChild(c);const l=document.createElement("b");
4182l.textContent=t.kind==="fil"?t.name||t.big||(r==="fr"?"Ãdition du jour":"Today's edition"):t.name||t.big,o.appendChild(l);const d=document.createElement("span");d.className="pp-sp",o.appendChild(d);const p=document.createElement("button");p.type="button",p.className="pp-lx",p.setAttribute("aria-label",i.close),p.textContent="Ã",o.appendChild(p),a.appendChild(o);const u=document.createElement("div");u.className="pp-lb2",a.appendChild(u);const g=document.createElement("div");g.className="pp-lgrid";const f=document.createElement("div");f.className="pp-lmain",g.appendChild(f);const L=document.createElement("div");f.appendChild(L);const v=document.createElement("p");v.className="pp-lhead",v.textContent=t.text||(t.url?"":i.s1none),v.textContent&&L.appendChild(v);const y=document.createElement("div");if(y.className="pp-lmeta",t.sector){const z=document.createElement("button");z.type="button",z.textContent=t.sector,z.addEventListener("click",()=>{var Y,B;try{window.dispatchEvent(new CustomEvent("ppmap:filter",{detail:{sector:t.sector}}))}catch{}try{const X=document.querySelector("#pp-market-ck");(Y=X==null?void 0:X.contentWindow)==null||Y.postMessage({type:"pp-filter",sector:t.sector},"*"),(B=document.querySelector(".atl2")||X)==null||B.scrollIntoView({behavior:"smooth",block:"start"})}catch{}xe()}),y.appendChild(z)}for(const z of[t.amount,t.when].filter(Boolean)){const Y=document.createElement("span");Y.textContent=z,y.appendChild(Y)}if(y.childNodes.length&&f.appendChild(y),t.url){const z=(()=>{try{return new URL(t.url).hostname.replace(/^www\./,"")}catch{return""}})(),Y=document.createElement("a");Y.className="pp-lsrc",Y.href=t.url,Y.target="_blank",Y.rel="nofollow noopener",Y.textContent=(r==="fr"?"lire la source":"read the source")+(z?" · "+z:"")+" â",f.appendChild(Y)}const h=document.createElement("div");h.className="pp-lside",g.appendChild(h);const b=document.createElement("div");b.className="pp-lcardhold";const x=document.createElement("div");x.className="pp-lcardimg";const A=document.createElement("span");A.className="pp-lclive",A.textContent="â LIVE",x.appendChild(A);const w=document.createElement("span");if(w.className="pp-lcw",w.textContent=t.name||t.big,x.appendChild(w),t.text){const z=document.createElement("span");z.className="pp-lcq",z.textContent=t.text,x.appendChild(z)}const S=[t.name?t.big:"",t.sector].filter(Boolean).join(" · ");if(S){const z=document.createElement("span");z.className="pp-lcs",z.textContent=S.toUpperCase(),x.appendChild(z)}const E=document.createElement("span");E.className="pp-lcm",E.textContent="proplace.co",x.appendChild(E),b.appendChild(x),h.appendChild(b),u.appendChild(g);const j=z=>{try{const B=document.cookie.split("; ").filter(X=>X.indexOf("proplace_auth=")===0)[0];if(B){const X=JSON.parse(atob(decodeURIComponent(B.split("=")[1])));if(X&&X.fund_type){const te=String(X.member_session||"").trim();return"/cibles/go/?fund="+encodeURIComponent(X.fund_type)+(te?"&session="+encodeURIComponent(te):"")+"&"+z}}}catch{}return(!location.pathname.startsWith("/en/")?"/actualites/":"/en/actualites/")+"?"+z},O=document.createElement("div");O.className="pp-lacts";
4182const k=(z,Y,B,X)=>{const te=document.createElement("a");te.className=B?"pp-lbtn":"pp-lghost",te.href=z,te.textContent=Y,X!=null&&X.blank&&(te.target="_blank",te.rel="nofollow noopener"),X!=null&&X.onClick&&te.addEventListener("click",X.onClick),O.appendChild(te)},_=t.name.length>28?t.name.slice(0,27)+"â¦":t.name,N=t.name?i.ev.replace(/cette société|this company/,_):i.ev,I=t.name.length>=2&&dl(t.name),ce=/\/actualites(\/|$)/.test(location.pathname.replace(/^\/en(?=\/)/,"")),K=!!t.url,pe=t.kind==="fil"||t.cls==="pr"||t.cls==="fil"||t.rub==="actualites"||t.rub==="nominations"||t.rub==="recrutements",ee=[t.name?"eval="+encodeURIComponent(t.name):"",t.date?"jour="+encodeURIComponent(t.date.slice(0,10)):"",t.rub==="ma"?"type=ma":t.rub==="levees"?"type=levee":"",t.sector?"q="+encodeURIComponent(t.sector):""].filter(Boolean).join("&"),P=()=>!!document.querySelector(".atl2")||!!document.getElementById("pp-direct-atelier"),D=()=>{var z;try{const Y=document.querySelector("#pp-market-ck");(z=document.querySelector(".atl2")||document.getElementById("pp-direct-atelier")||Y)==null||z.scrollIntoView({behavior:"smooth",block:"start"})}catch{}},M=z=>{var B;z.preventDefault();const Y={};t.sector&&(Y.sector=t.sector),t.date&&(Y.day=t.date.slice(0,10)),t.name&&(Y.search=t.name),(t.rub==="ma"||t.rub==="levees")&&(Y.dealKind=t.rub==="ma"?"ma":"levee");try{window.dispatchEvent(new CustomEvent("ppmap:filter",{detail:Y}))}catch{}try{const X=document.querySelector("#pp-market-ck");(B=X==null?void 0:X.contentWindow)==null||B.postMessage({type:"pp-filter",...Y},"*")}catch{}D(),xe()},re=z=>{if(ce){z.preventDefault();let Y=!1;try{const B=document.cookie.split("; ").filter(X=>X.indexOf("proplace_auth=")===0)[0];if(B){const X=JSON.parse(atob(decodeURIComponent(B.split("=")[1])));Y=!!(X&&X.fund_type)}}catch{}if(Y)window.location.assign(j("eval="+encodeURIComponent(t.name)));else try{window.dispatchEvent(new CustomEvent("ppmap:signup",{detail:{name:t.name}}))}catch{}xe();return}if(!(!P()||!I)){z.preventDefault();try{window.dispatchEvent(new CustomEvent("ppmap:evaluate",{detail:{name:t.name}}))}catch{}D(),xe()}},H=z=>{if(ce&&I){z.preventDefault();let B=!1;try{const X=document.cookie.split("; ").filter(te=>te.indexOf("proplace_auth=")===0)[0];if(X){const te=JSON.parse(atob(decodeURIComponent(X.split("=")[1])));B=!!(te&&te.fund_type)}}catch{}if(B)window.location.assign(j("similar="+encodeURIComponent(t.name)));else try{window.dispatchEvent(new CustomEvent("ppmap:signup",{detail:{name:t.name}}))}catch{}xe();return}if(!(!(P()&&location.pathname.indexOf("/cibles")>=0)||!I)){z.preventDefault();try{sessionStorage.setItem("pp:similar",t.name)}catch{}try{window.dispatchEvent(new CustomEvent("ppmap:filter",{detail:{search:t.name}})),window.dispatchEvent(new CustomEvent("ppmap:similar",{detail:{name:t.name}}))}catch{}D(),xe()}},se=(z,Y)=>{if(P()){z.preventDefault();try{window.dispatchEvent(new CustomEvent("ppmap:research",{detail:Y}))}catch{}D(),xe()}};if(K&&pe&&k(j("rs="+encodeURIComponent(t.url)),i.rs,!0,{onClick:z=>se(z,{url:t.url})}),I&&(k(j("eval="+encodeURIComponent(t.name)),N,!pe,{onClick:re}),k(j("similar="+encodeURIComponent(t.name)),i.similar,!1,{onClick:H})),K&&!pe&&k(j("rs="+encodeURIComponent(t.url)),i.rs,!1,{onClick:z=>se(z,{url:t.url})}),!K&&(t.text||I)){const z=[t.name,t.text,t.sector].filter(Boolean).join(` 4183`);k(j("rstext="+encodeURIComponent(z)),i.explore,!I,{onClick:Y=>se(Y,{text:z})})}ee&&k(j(ee),i.cockpit,!1,{onClick:M}),K&&k(t.url,i.source,!1,{blank:!0}),u.appendChild(O);const ie=document.createElement("div");ie.className="pp-lfoot";const he=document.createElement("a");he.className="pp-lghost",he.href="https://x.com/Proplace_co",he.target="_blank",he.rel="noopener",he.textContent=i.x,ie.appendChild(he);const Le=document.createElement("a");Le.className="pp-lghost",Le.href="https://www.linkedin.com/in/alexandre-proplace/",Le.target="_blank",Le.rel="noopener",Le.textContent=i.li,ie.appendChild(Le),u.appendChild(ie);const xe=()=>{document.removeEventListener("keydown",oe),s.remove()},oe=z=>{z.key==="Escape"&&xe()};p.addEventListener("click",xe),s.addEventListener("click",z=>{z.target===s&&xe()}),document.addEventListener("keydown",oe),document.body.appendChild(s),b4(t,Math.max(240,b.clientWidth||340)).then(z=>{z&&b.isConnected&&b.replaceChildren(z)}),Tx().then(z=>{const Y=((z==null?void 0:z.date)||"").slice(0,10);if(!Y||(t.date||"").slice(0,10)!==Y)return;const B=Ib(z);if(!B.length||!L.isConnected)return;const X=Pb(B,new Set,t.name,t.text||t.big),te=document.createElement("div");if(te.className="pp-ldec",X>=0){te.innerHTML=B[X].html,L.replaceChildren(te);return}if(t.kind==="fil"){for(const Ae of B){const Ze=document.createElement("div");Ze.innerHTML=Ae.html,te.appendChild(Ze)}te.childNodes.length&&L.replaceChildren(te)}}).catch(()=>{})}const y1={fr:{dow:["D","L","M","M","J","V","S"],months:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],op:t=>`${t} op.`,none:"â",legend:"Les éditions du jour",fold:"Masquer les jours",unfold:"Voir les jours",daysBtn:"Jours",read:"ouvrir cette édition",noPage:"pas encore dâédition ce jour-là ",soon:"à venir",unknown:"aucun relevé pour ce jour",inWin:"dans les 7 jours du direct",prev:"Mois précédent",next:"Mois suivant",left:"Défiler vers la gauche",right:"Défiler vers la droite",today:"aujourdâhui"},en:{dow:["S","M","T","W","T","F","S"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],op:t=>`${t} deal${t>1?"s":""}`,none:"â",legend:"The dayâs editions",fold:"Hide the days",unfold:"Show the days",daysBtn:"Days",read:"open this edition",noPage:"no edition that day yet",soon:"upcoming",unknown:"no record for that day",inWin:"within the 7 days of the live feed",prev:"Previous month",next:"Next month",left:"Scroll left",right:"Scroll right",today:"today"}},S4=()=>typeof location<"u"&&location.hostname.endsWith("proplace.co")?"":"https://proplace.co";let Wa=null;function j1(){return Wa||(Wa=fetch(S4()+"/actualites/manifest.json",{cache:"no-cache"}).then(t=>t.ok?t.json():[]).then(t=>Array.isArray(t)?t:[]).catch(()=>(Wa=null,[]))),Wa}const jm="pp-days-style-v4",w1="ppdays:open",na="pp-days-open";function wd(){try{return localStorage.getItem(w1)==="1"}catch{return!1}}function E4(t){try{localStorage.setItem(w1,t?"1":"0")}catch{}try{window.dispatchEvent(new CustomEvent(na,{detail:{open:t}}))}catch{}}const cs='var(--pp-body,"Instrument Sans",system-ui,-apple-system,sans-serif)',N4=` 4184.pp-days{font-family:var(--pp-body,"Instrument Sans",system-ui,-apple-system,sans-serif);color:#fff; 4185background:#0F1D33;padding:9px 12px 10px} 4186.pp-days,.pp-days *{box-sizing:border-box} 4187.pp-days .pp-dh{display:flex;align-items:center;gap:10px;padding:0 2px 8px} 4188.pp-days .pp-dm{display:inline-flex;align-items:center;gap:5px} 4189.pp-days .pp-dmb{border:1px solid #1B2F4E;background:transparent;width:24px;height:24px; 4190line-height:1;font-size:12px;color:#A7B6CC;cursor:pointer;font-family:inherit;padding:0} 4191.pp-days .pp-dmb:hover:not(:disabled){border-color:#5FD39B;color:#fff} 4192.pp-days .pp-dmb:disabled{opacity:.28;cursor:default} 4193.pp-days .pp-dt{font-family:${cs};font-size:12px;font-weight:600;color:#A7B6CC;min-width:11ch;text-align:center} 4194.pp-days .pp-dsp{flex:1} 4195.pp-days .pp-dleg{font-family:${cs};font-size:12px;color:#5A6E85;white-space:nowrap;font-weight:600} 4196/* REPLI (retour Antoine 10/08 : « un moyen d'afficher / réduire les jours ») â 4197 la bande n'est pas toujours ce qu'on vient chercher ; elle se range, et le 4198 choix est mémorisé par navigateur. */ 4199.pp-days .pp-dfold{display:inline-flex;align-items:center;gap:7px;border:1px solid #1B2F4E; 4200background:transparent;color:#A7B6CC;font-family:${cs};font-size:12px;padding:5px 10px;cursor:pointer;white-space:nowrap;font-weight:600}
4201.pp-days .pp-dfold:hover{border-color:#5FD39B;color:#fff} 4202.pp-days .pp-dfold i{font-style:normal;font-size:9px;line-height:1} 4203.pp-days[hidden]{display:none!important} 4204.pp-days .pp-dfold{display:none} 4205/* les gouttières des flèches : elles vivent DANS la marge, jamais par-dessus 4206 une case (sinon la première et la dernière du mois sont à moitié cachées) */ 4207.pp-days .pp-dbox{position:relative;padding:0 30px} 4208.pp-days .pp-dscroll{overflow-x:auto;overflow-y:hidden;scrollbar-width:none; 4209scroll-behavior:smooth;-webkit-overflow-scrolling:touch} 4210.pp-days .pp-dscroll::-webkit-scrollbar{display:none} 4211.pp-days .pp-drow{display:flex;gap:4px;width:max-content;min-width:100%} 4212/* margin/text-transform remis à zéro EXPRÃS : la bande est montée dans des 4213 pages qui ont leurs propres classes courtes â MarchesPage définit un .win 4214 mono, en capitales, avec 18px de marge, qui tombait pile sur les cases de la 4215 fenêtre (elles partaient 18px plus bas, en majuscules). D'où aussi le 4216 renommage de la classe de fenêtre en .dwin. */ 4217.pp-days .pp-dc{flex:none;width:58px;display:flex;flex-direction:column;align-items:center; 4218justify-content:center;gap:1px;height:54px;text-decoration:none;border:1px solid transparent; 4219position:relative;margin:0;text-transform:none; 4220transition:background .14s ease,border-color .14s ease} 4221.pp-days .pp-dc em{font-style:normal;font-family:${cs};font-size:12px;opacity:.7;font-weight:600} 4222.pp-days .pp-dc b{font-size:17px;font-weight:700;letter-spacing:-.03em;line-height:1.05} 4223.pp-days .pp-dc span{font-family:${cs};font-size:12px;opacity:.62; 4224white-space:nowrap;font-weight:600} 4225/* â une édition existe : cliquable, encre claire (a = navigate, button = local /cibles) */ 4226.pp-days a.pp-dc,.pp-days button.pp-dc{background:#16233A;color:#fff;cursor:pointer} 4227.pp-days a.pp-dc:hover,.pp-days button.pp-dc:hover{background:#1E3050;border-color:#5FD39B;text-decoration:none} 4228.pp-days button.pp-dc{font:inherit;padding:0;appearance:none;-webkit-appearance:none} 4229/* â¡ l'édition ouverte */ 4230.pp-days .pp-dc.cur{background:#12A150;color:#fff;border-color:#12A150} 4231.pp-days a.pp-dc.cur:hover,.pp-days button.pp-dc.cur:hover{background:#12A150;border-color:#5FD39B} 4232/* la FENÃTRE du direct (pages marché) : toute la semaine en vert, un cran 4233 sous le jour d'ancrage â on voit d'un regard ce que le LIVE regroupe */ 4234.pp-days .pp-dc.dwin{background:#0B6B3E;color:#fff;border-color:#12A150} 4235.pp-days a.pp-dc.dwin:hover,.pp-days button.pp-dc.dwin:hover{background:#12A150;border-color:#5FD39B} 4236/* ⢠pas d'édition : inerte, et ça se voit */ 4237.pp-days span.pp-dc{background:#0E1A2C;color:#47586E;cursor:default} 4238.pp-days .pp-dc.tdy::after{content:"";position:absolute;left:50%;bottom:4px;width:12px;height:2px; 4239background:currentColor;transform:translateX(-50%);opacity:.75} 4240.pp-days .pp-darr{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:26px; 4241height:26px;border:1px solid #1B2F4E;background:#0F1D33;color:#A7B6CC;font-size:13px;line-height:1; 4242cursor:pointer;display:grid;place-items:center;font-family:inherit;padding:0} 4243.pp-days .pp-darr:hover{border-color:#5FD39B;color:#fff} 4244.pp-days .pp-darr.l{left:0}.pp-days .pp-darr.r{right:0} 4245@media (max-width:760px){ 4246.pp-days{padding:8px 8px 9px} 4247.pp-days .pp-dbox{padding:0} 4248.pp-days .pp-dc{width:50px;height:50px} 4249.pp-days .pp-dc b{font-size:15px} 4250.pp-days .pp-darr,.pp-days .pp-dleg{display:none} 4251} 4252@media (prefers-reduced-motion:reduce){.pp-days .pp-dscroll{scroll-behavior:auto}} 4253/* Thème clair â cockpit /cibles (collé sous LIVE, surface page) */ 4254.pp-days.pp-days-light{color:#16233A;background:transparent;padding:8px 0 6px} 4255.pp-days.pp-days-light .pp-dmb{border-color:#E3E8F0;color:#4B5E78} 4256.pp-days.pp-days-light .pp-dmb:hover:not(:disabled){border-color:#12A150;color:#16233A} 4257.pp-days.pp-days-light .pp-dt{color:#4B5E78} 4258.pp-days.pp-days-light .pp-dleg{color:#8FA0B8} 4259.pp-days.pp-days-light .pp-dfold{border-color:#E3E8F0;color:#4B5E78} 4260.pp-days.pp-days-light .pp-dfold:hover{border-color:#12A150;color:#16233A} 4261.pp-days.pp-days-light a.pp-dc, 4262.pp-days.pp-days-light button.pp-dc{background:#F5F7FA;color:#16233A;border-color:transparent} 4263.pp-days.pp-days-light a.pp-dc:hover, 4264.pp-days.pp-days-light button.pp-dc:hover{background:#E3E8F0;border-color:#12A150} 4265.pp-days.pp-days-light .pp-dc.cur{background:#12A150;color:#fff;border-color:#12A150} 4266.pp-days.pp-days-light .pp-dc.dwin{background:#E7F6EE;color:#16233A;border-color:#86EFAC} 4267.pp-days.pp-days-light a.pp-dc.cur:hover, 4268.pp-days.pp-days-light button.pp-dc.cur:hover{background:#12A150;border-color:#12A150} 4269.pp-days.pp-days-light span.pp-dc{background:#F9FBFD;color:#8FA0B8} 4270.pp-days.pp-days-light .pp-darr{border-color:#E3E8F0;background:#fff;color:#4B5E78} 4271.pp-days.pp-days-light .pp-darr:hover{border-color:#12A150;color:#16233A} 4272`;function C4(){if(document.getElementById(jm))return;const t=document.createElement("style");t.id=jm,t.textContent=N4,document.head.appendChild(t)}const ra=t=>String(t).padStart(2,"0"),Qa=t=>t.slice(0,7);function wm(t){const n=Number(t.slice(0,4)),r=Number(t.slice(5,7));return!n||!r||r<1||r>12?0:new Date(Date.UTC(n,r,0)).getUTCDate()}function cc(t,n){const r=Number(t.slice(0,4)),i=Number(t.slice(5,7)),s=new Date(Date.UTC(r,i-1+n,1));return`${s.getUTCFullYear()}-${ra(s.getUTCMonth()+1)}`}function _4(t){const n=Date.parse(t+"T00:00:00Z");return Number.isNaN(n)?0:new Date(n).getUTCDay()}function T4(t,n){const r=Date.parse(t+"T00:00:00Z");if(Number.isNaN(r))return t;const i=new Date(r+n*864e5);return`${i.getUTCFullYear()}-${ra(i.getUTCMonth()+1)}-${ra(i.getUTCDate())}`}const q4=(t,n)=>{const r=Number(t.slice(5,7));return`${y1[n].months[r-1]||t} ${t.slice(0,4)}`};
4272function F4(t,n={}){C4();const r=n.lang==="en"?"en":"fr",i=y1[r],s=n.mode==="local",a=n.theme==="light",o=xn();let c=(n.current||"").slice(0,10);const l=Math.max(0,Math.min(31,Math.floor(Number(n.windowDays)||0))),d=l>1&&c?T4(c,-(l-1)):"";let p=(n.month||"").slice(0,7)||Qa(c||o);wm(p)||(p=Qa(o));let u=!0;const g=new Map,f=new Set,L=new Map,v=new Set,y=new Set((n.editionDays||[]).map(oe=>oe.slice(0,10)).filter(oe=>/^\d{4}-\d{2}-\d{2}$/.test(oe))),h=(n.urlPrefix||"").replace(/\/?$/,"/"),b=(n.sector||"").trim().toLowerCase();let x="",A="",w=!1;const S=oe=>{const z=(Y,B)=>{/^\d{4}-\d{2}-\d{2}$/.test(Y)&&(g.set(Y,B),v.add(Y),(!x||Y<x)&&(x=Y),(!A||Y>A)&&(A=Y))};if(Array.isArray(oe))for(const Y of oe){const B=((Y==null?void 0:Y.date)||"").slice(0,10),X=Number(Y==null?void 0:Y.count);z(B,Number.isFinite(X)&&X>=0?X:0)}else if(oe&&typeof oe=="object")for(const[Y,B]of Object.entries(oe)){const X=Number(B);z(Y.slice(0,10),Number.isFinite(X)&&X>=0?X:0)}w=x!==""};n.dayCounts&&S(n.dayCounts);const E=document.createElement("div");E.className="pp-days"+(a?" pp-days-light":"");const j=document.createElement("div");j.className="pp-dh";const O=document.createElement("span");O.className="pp-dm";const k=document.createElement("button");k.type="button",k.className="pp-dmb",k.textContent="â¹",k.title=i.prev,k.setAttribute("aria-label",i.prev);const _=document.createElement("span");_.className="pp-dt";const N=document.createElement("button");N.type="button",N.className="pp-dmb",N.textContent="âº",N.title=i.next,N.setAttribute("aria-label",i.next),O.appendChild(k),O.appendChild(_),O.appendChild(N),j.appendChild(O),j.appendChild(Object.assign(document.createElement("span"),{className:"pp-dsp"}));const I=document.createElement("span");I.className="pp-dleg",I.textContent=i.legend,j.appendChild(I),E.appendChild(j);const ce=oe=>{E.hidden=!oe};ce(wd());const K=oe=>{var z;ce(!!((z=oe.detail)!=null&&z.open))};window.addEventListener(na,K);const pe=document.createElement("div");pe.className="pp-dbox";const ee=document.createElement("div");ee.className="pp-dscroll";const P=document.createElement("div");P.className="pp-drow",ee.appendChild(P),pe.appendChild(ee);const D=document.createElement("button");D.type="button",D.className="pp-darr l",D.textContent="â¹",D.title=i.left,D.setAttribute("aria-label",i.left);const M=document.createElement("button");M.type="button",M.className="pp-darr r",M.textContent="âº",M.title=i.right,M.setAttribute("aria-label",i.right),pe.appendChild(D),pe.appendChild(M),E.appendChild(pe),t.appendChild(E);function re(oe,z,Y,B){const X=`${Number(oe.slice(8,10))} ${i.months[Number(oe.slice(5,7))-1]} ${oe.slice(0,4)}`,te=[];return B&&te.push(i.inWin),te.push(z===null?oe>(A||o)?i.soon:i.unknown:i.op(z)),te.push(Y?i.read:i.noPage),`${X} â ${te.join(" · ")}`}function H(){_.textContent=q4(p,r);const oe=wm(p);P.textContent="";let z=null;for(let Y=1;Y<=oe;Y++){const B=`${p}-${ra(Y)}`,X=w&&!!x&&B>=x&&B<=A;let te="";s||(h?!n.inPlace&&y.has(B)&&(te=`${h}${B}/`):(L.get(B)||g.has(B)||f.has(B))&&(te=`/actualites/?jour=${B}`));const Ae=!!te||g.has(B)||f.has(B),Ze=!s&&!!h&&!!n.inPlace&&!te&&B<=o&&(X||y.has(B)||g.has(B)),Ke=!s&&!h&&!!n.inPlace&&Ae&&B<=o,st=Ze||Ke,Ct=s&&(v.has(B)||g.has(B)),T=s?Ct:!!te||st,C=X||Ct?g.get(B)||0:null,q=document.createElement(s?T?"button":"span":st?"button":te?"a":"span"),G=!!d&&B>=d&&B<=c;q.className="pp-dc"+(B===c?" cur":G?" dwin":"")+(B===o?" tdy":""),!s&&te&&!st&&(q.href=te,B===c&&q.setAttribute("aria-current","page")),(s&&T||st)&&(q.type="button",B===c&&q.setAttribute("aria-current","true")),q.addEventListener("click",Q=>{var ge;if(!(!T&&!s)&&!((s||st)&&(Q.preventDefault(),Q.stopPropagation(),!T))){(s||st)&&(c=B,H());try{(ge=n.onPick)==null||ge.call(n,B)}catch{}try{window.dispatchEvent(new CustomEvent("pp-edition-day",{detail:{day:B}}))}catch{}}}),q.title=re(B,C,T,G||B===c);const F=document.createElement("em");F.textContent=i.dow[_4(B)];const J=document.createElement("b");J.textContent=ra(Y);const R=document.createElement("span");R.textContent=C===null?i.none:i.op(C),q.appendChild(F),q.appendChild(J),q.appendChild(R),P.appendChild(q),(B===c||!c&&B===o)&&(z=q)}requestAnimationFrame(()=>{if(u)if(z){const Y=z.offsetLeft-(ee.clientWidth-z.offsetWidth)/2;ee.scrollLeft=Math.max(0,Y)}else ee.scrollLeft=ee.scrollWidth}
4272),k.disabled=!!x&&cc(p,-1)<Qa(x),N.disabled=p>=Qa(o)}H(),s?n.daysUrl?fetch(n.daysUrl,{cache:"no-cache"}).then(oe=>oe.ok?oe.json():null).then(oe=>{if(!u||!oe)return;const z=Array.isArray(oe.days)?oe.days:Array.isArray(oe)?oe:[];S(z),v.has(o)||(v.add(o),g.has(o)||g.set(o,0),(!x||o<x)&&(x=o),(!A||o>A)&&(A=o),w=!0),H()}).catch(()=>{}):n.dayCounts?(v.has(o)||(v.add(o),g.has(o)||g.set(o,0)),H()):(v.add(o),g.set(o,0),x=A=o,w=!0,H()):Promise.all([Cp(),j1()]).then(([oe,z])=>{if(u){for(const Y of z){const B=(Y&&Y.date?String(Y.date):"").slice(0,10);if(!B)continue;const X=Y.url||"",te=Y.url_en||(X?"/en"+X:""),Ae=r==="en"&&te||X;Ae&&L.set(B,Ae)}for(const Y of oe){const B=(Y&&Y.date?String(Y.date):"").slice(0,10);if(!B||b)continue;const X=Number(Y.count);Number.isFinite(X)&&X>=0&&g.set(B,X);const te=Y.masthead;te&&typeof te=="object"&&(g.set(B,Object.values(te).reduce((Ae,Ze)=>Ae+(Number(Ze)||0),0)),f.add(B)),(!x||B<x)&&(x=B),(!A||B>A)&&(A=B)}w=x!=="",H(),gr().then(Y=>{if(!u||!Y)return;const B=new Map;for(const te of Y.recent_ops||[]){const Ae=(te._pool_date||te.published||"").slice(0,10);if(!Ae)continue;if(b&&String(te.product_category_above||"").trim().toLowerCase()!==b){B.has(Ae)||B.set(Ae,new Set);continue}B.has(Ae)||B.set(Ae,new Set);const Ze=Fx(te.company_name);Ze&&B.get(Ae).add(Ze)}let X=!1;B.forEach((te,Ae)=>{if(f.has(Ae))return;const Ze=te.size;g.get(Ae)!==Ze&&(g.set(Ae,Ze),X=!0),(!x||Ae<x)&&(x=Ae,X=!0),(!A||Ae>A)&&(A=Ae,X=!0)}),w=w||x!=="",X&&H()})}});const se=()=>Math.max(140,Math.round(ee.clientWidth*.72)),ie=()=>{ee.scrollLeft-=se()},he=()=>{ee.scrollLeft+=se()},Le=()=>{p=cc(p,-1),H()},xe=()=>{p=cc(p,1),H()};return D.addEventListener("click",ie),M.addEventListener("click",he),k.addEventListener("click",Le),N.addEventListener("click",xe),()=>{u=!1,window.removeEventListener(na,K),D.removeEventListener("click",ie),M.removeEventListener("click",he),k.removeEventListener("click",Le),N.removeEventListener("click",xe),E.remove()}}const km=["ma","levees","nominations","recrutements","actualites"],Ip={fr:{ops:"OPÃRATIONS",emptyDay:"Aucune opération relevée ce jour-là â les autres éditions sont dans la bande ci-dessous.",notInFeed:t=>`Les ${t===1?"détails de l'opération":`détails des ${t} opérations`} de ce jour ne sont pas dans le fil â ouvrez l'édition dans la bande ci-dessous.`,ev:"Ãvaluer",ma:"ð¤ Rachetée",lv:"ð° Lève des fonds",hire:"ð¼ Recrute",nom:"ð¤ Nomination",other:"ð° Actualité",bigMa:"Rachetée",bigLv:"Levée",bigHire:"Recrute",bigNom:"Nomination",bigOther:"Signal",today:"aujourd'hui",yesterday:"hier",ago:t=>`il y a ${t} j`,left:t=>`encore ${t} j`,filAll:"Tout",edito:"Afficher Edito du jour",filWire:"Actualités",grpOps:"Opérations",grpNews:"Actualités",grpSig:"Signaux (vos moteurs)",scopeDay:t=>`Le LIVE regroupe les événements ${t}.`,scopeWin:t=>`Le LIVE regroupe les événements des ${t} derniers jours.`,scopeToday:"d'aujourd'hui",scopeOf:t=>`du ${t}`,scopeOn:t=>` Périmètre : ${t}.`,scopeMa:"fusions-acquisitions",scopeLv:"levées de fonds",rub:{ma:"ð¤ M&A",levees:"ð Levées de fonds",nominations:"ð¤ Nominations",recrutements:"ð¼ Offres d'emploi",actualites:"ð° Autres actualités"}},en:{ops:"DEALS",emptyDay:"No deal recorded that day â the other editions are in the strip below.",notInFeed:t=>`The ${t===1?"deal":`${t} deals`} of that day are not in the ticker â open the edition in the strip below.`,ev:"Evaluate",ma:"ð¤ Acquired",lv:"ð° Raising",hire:"ð¼ Hiring",nom:"ð¤ Appointment",other:"ð° News",bigMa:"Acquired",bigLv:"Raise",bigHire:"Hiring",bigNom:"Appointment",bigOther:"Signal",today:"today",yesterday:"yesterday",ago:t=>`${t} d ago`,left:t=>`${t} d left`,filAll:"All",edito:"Show today's editorial",filWire:"News",grpOps:"Deals",grpNews:"News",grpSig:"Signals (your engines)",scopeDay:t=>`LIVE covers ${t}.`,scopeWin:t=>`LIVE covers the events of the last ${t} days.`,scopeToday:"today's events",scopeOf:t=>`the events of ${t}`,scopeOn:t=>` Scope: ${t}.`,scopeMa:"M&A",scopeLv:"fundraising",rub:{ma:"ð¤ M&A",levees:"ð Fundraising",nominations:"ð¤ Appointments",recrutements:"ð¼ Job offers",actualites:"ð° Other news"}}},Za={hiring:{fr:"Recrute",en:"Hiring",cls:"jb",emoji:"ð¼",bigFr:"Recrute",bigEn:"Hiring",rub:"recrutements"},raised:{fr:"Lève des fonds",en:"Raising",cls:"lv",emoji:"ð°",bigFr:"Levée",bigEn:"Raise",rub:"levees"},news:{fr:"Presse",en:"Press",cls:"pr",emoji:"ð°",bigFr:"Presse",bigEn:"Press",rub:"actualites"},posting:{fr:"Publie",en:"Posting",cls:"nt",emoji:"ð£",bigFr:"Publie",bigEn:"Posting",rub:"actualites"},building:{fr:"Construit",en:"Building",cls:"nt",emoji:"ð»",bigFr:"Construit",bigEn:"Building",rub:"actualites"},community:{fr:"Communauté",en:"Community",cls:"nt",emoji:"ð¬",bigFr:"Actif",bigEn:"Active",rub:"actualites"},registry:{fr:"Nouveau",en:"New",cls:"nt",emoji:"ð",bigFr:"Nouveau",bigEn:"New",rub:"actualites"},exodus:{fr:"Départs",en:"Exodus",cls:"pr",emoji:"ð",bigFr:"Départs",bigEn:"Exo
4272dus",rub:"actualites"}},Am="pp-live-style-v16",ii='var(--pp-body,"Instrument Sans",system-ui,-apple-system,sans-serif)',O4=` 4273/* Le bandeau tient la largeur DE LA PAGE, pas celle de l'écran (retour Antoine 4274 10/08) : mêmes métriques que .pp-nav-inner / .pph .in (1200 / 32) â son bord 4275 gauche tombe donc exactement sous le logo. Règle MIROIR dans le Python 4276 (execution/site_publish.py · PROPLACE_HEADER_CSS) pour que les pages bakées 4277 n'aient pas de saut de mise en page avant le chargement du bundle. */ 4278.pp-livewrap{max-width:1200px;margin:0 auto;padding:0 32px} 4279@media (max-width:760px){.pp-livewrap{padding:0 18px}} 4280/* UNE SEULE SURFACE (retour Antoine 10/08 : « le LIVE et les dates doivent 4281 former le même menu, retire les bords arrondis ») : la barre et la bande des 4282 dates vivent dans le même cadre d'encre, séparées par un simple filet. */ 4283.pp-band{background:#0F1D33;border:1px solid #1B2F4E} 4284.pp-band .pp-live{border-bottom:1px solid #1B2F4E} 4285.pp-live{display:flex;height:44px;background:#0F1D33;color:#fff;overflow:hidden;align-items:stretch;font-family:var(--pp-body,"Instrument Sans",system-ui,-apple-system,sans-serif);line-height:1.2} 4286.pp-live,.pp-live *{box-sizing:border-box;margin:0} 4287/* Le badge LIVE de la maquette : 11px/700, pastille blanche, coins 4px. 4288 Il etait en 9,5px capitales espacees â illisible, et c'est justement le 4289 seul mot rouge de la barre. La bande fait 44px : on garde 12px de rabat 4290 pour que le fil ne perde pas de largeur. */ 4291.pp-live .pp-lb{flex:none;display:flex;align-items:center;gap:7px;padding:0 12px;background:#E5484D;font-size:11px;font-weight:700;color:#fff} 4292.pp-live .pp-lb i{width:6px;height:6px;border-radius:50%;background:#fff;animation:pp-live-bk 1.6s infinite} 4293@keyframes pp-live-bk{0%,100%{opacity:1}50%{opacity:.3}} 4294.pp-live .pp-win{flex:1;min-width:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 22px,#000 calc(100% - 22px),transparent);mask-image:linear-gradient(90deg,transparent,#000 22px,#000 calc(100% - 22px),transparent)} 4295.pp-live .pp-run{display:flex;width:max-content;height:44px;animation:pp-live-roll 62s linear infinite} 4296.pp-live:hover .pp-run{animation-play-state:paused} 4297@keyframes pp-live-roll{to{transform:translateX(-50%)}} 4298@media (prefers-reduced-motion:reduce){.pp-live .pp-run{animation:none}} 4299.pp-live .pp-tk{display:flex;align-items:center;gap:10px;padding:0 16px;height:44px;border-right:1px solid #1B2F4E;white-space:nowrap} 4300.pp-live .pp-tk.pp-act{cursor:pointer} 4301.pp-live .pp-tk.pp-act:hover{background:#16233A} 4302.pp-live .pp-sg{font-size:9.5px;font-weight:700;border-radius:3px;padding:3px 8px;color:#fff} 4303.pp-live .pp-sg.lv{background:#E5484D}.pp-live .pp-sg.ma{background:#7C3AED} 4304.pp-live .pp-sg.jb{background:#E0A81E}.pp-live .pp-sg.pr{background:#4B5E78} 4305.pp-live .pp-sg.nt{background:#2563EB}.pp-live .pp-sg.fil{background:#12A150;letter-spacing:.12em} 4306.pp-live .pp-tk.pp-filtk{background:#0E1A2C;gap:12px;padding:0 18px;max-width:min(42ch,70vw)} 4307.pp-live .pp-tk.pp-filtk .pp-wt{color:#fff;font-weight:550;font-size:13px;letter-spacing:-.01em; 4308overflow:hidden;text-overflow:ellipsis;max-width:36ch} 4309.pp-live .pp-fl{font-size:15px;line-height:1} 4310/* Texte plus clair (retour Antoine) : blanc net, plus de gris #A7B6CC illisible. */ 4311.pp-live .pp-co{font-weight:700;font-size:14px;color:#fff;letter-spacing:-.01em} 4312.pp-live .pp-am{font-family:${ii};font-size:12px;font-weight:700;color:#fff;background:rgba(255,255,255,.16);border-radius:3px;padding:2px 8px} 4313.pp-live .pp-wt{font-size:12.5px;font-weight:500;color:#E8EEF5} 4314.pp-live .pp-soc{flex:none;display:flex;align-items:center;gap:2px;padding:0 8px 0 4px;border-left:1px solid #1B2F4E} 4315.pp-live .pp-soc a,.pp-live .pp-dytog{display:grid;place-items:center;width:28px;height:28px;border-radius:5px;color:#C5D4E3} 4316.pp-live .pp-soc a:hover,.pp-live .pp-dytog:hover{background:#16233A;color:#fff} 4317.pp-live .pp-soc svg,.pp-live .pp-dytog svg{display:block} 4318.pp-live .pp-edito{flex:none;display:inline-flex;align-items:center;gap:6px;height:28px; 4319margin:0 6px 0 2px;padding:0 10px;border:1px solid #1B2F4E;border-radius:5px; 4320background:transparent;color:#E8EEF5;font:inherit;font-size:11.5px;font-weight:650; 4321cursor:pointer;white-space:nowrap} 4322.pp-live .pp-edito:hover{background:#16233A;color:#fff;border-color:#5FD39B} 4323.pp-live .pp-edito[aria-pressed="true"]{color:#7FD8A6;background:#0E1A2C;border-color:#12A150} 4324.pp-live .pp-dytog{flex:none;width:40px;height:44px;border:0;border-left:1px solid #1B2F4E;border-radius:0; 4325background:transparent;cursor:pointer;color:#C5D4E3} 4326.pp-live .pp-dytog:hover{background:#16233A;color:#fff} 4327.pp-live .pp-dytog[aria-pressed="true"]{color:#7FD8A6;background:#0E1A2C} 4328/* FILTRE : un bouton compact â le fil garde sa largeur â menu déroulant vers le bas. */ 4329.pp-live .pp-fil{flex:none;position:relative;display:flex;align-items:center;padding:0 10px;border-right:1px solid #1B2F4E} 4330.pp-live .pp-filb{display:inline-flex;align-items:center;gap:7px;font-family:${ii};font-size:12px;font-weight:600;color:#D5E3F0;background:transparent;border:1px solid #1B2F4E;border-radius:4px;padding:5px 9px;cursor:pointer;white-space:nowrap} 4331.pp-live .pp-filb:hover{color:#fff;border-color:#5FD39B} 4332.pp-live .pp-filab{min-width:0} 4333.pp-live .pp-filb b,.pp-film button b{font-family:${ii};font-size:10px;font-weight:700;letter-spacing:0;color:#fff;background:rgba(255,255,255,.16);border-radius:3px;padding:1px 6px} 4334.pp-live .pp-filb b{background:#12A150} 4335/* Le menu VIT SUR document.body : .pp-live a overflow:hidden, et iOS recadre 4336 alors un position:fixed enfant â le déroulant recouvrait tout le fil (25/08). */ 4337.pp-film{position:fixed;z-index:1300;min-width:0;max-width:calc(100vw - 20px);width:max-content;display:flex;flex-direction:column;background:#0F1D33;border:1px solid #1B2F4E;border-radius:8px;padding:4px;box-shadow:0 16px 40px rgba(0,0,0,.45);box-sizing:border-box;overflow-x:hidden} 4338.pp-film[hidden]{display:none!important} 4339.pp-film button{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;font-family:${ii};font-size:12px;font-weight:600;color:#D5E3F0;background:transparent;border:0;border-radius:5px;padding:8px 10px;cursor:pointer;white-space:normal;line-height:1.25;min-width:0} 4340.pp-film button:hover{background:#16233A;color:#fff} 4341.pp-film button[aria-pressed="true"]{background:#12A150;color:#fff} 4342.pp-film button[hidden]{display:none!important} 4343.pp-filscope{display:block;max-width:290px;padding:9px 10px 10px;margin-bottom:3px; 4344border-bottom:1px solid #1B2F4E;font-family:${ii};font-size:12px;line-height:1.6;font-weight:600;color:#9DB2CA;white-space:normal;text-transform:none} 4345.pp-filg{font-family:${ii};font-size:12px;font-weight:600; 4346color:#5A6E85;padding:9px 10px 4px} 4347.pp-filg[hidden]{display:none!important}
4348/* Voile sous le bandeau LIVE seulement â le texte qui défile reste lisible. */ 4349.pp-filveil{position:fixed;z-index:1290;background:rgba(15,29,51,.32);touch-action:none} 4350.pp-filveil[hidden]{display:none!important} 4351/* TÃLÃPHONE : la puce RESTE (elle porte le compteur â la masquer priverait le 4352 mobile du seul nombre de la barre) et c'est tout le reste qui s'efface pour 4353 lui laisser la place. MESURà à 390px avant correctif : « LIVE » 73,6 px + 4354 puce 109,2 px + réseaux 83 px = 265,8 px incompressibles sur 352, il ne 4355 restait que 86 px de fil (16 px à 320 px !) â un fragment coupé en plein mot. 4356 Partent donc : le MOT « LIVE » (le point rouge suffit, il clignote) et les 4357 icônes réseaux (elles sont au pied de page). Le libellé de portée, lui, 4358 n'existe plus nulle part : sa phrase est dans le menu des puces (16/08). */ 4359@media (max-width:860px){ 4360.pp-live .pp-lb b{display:none} 4361.pp-live .pp-lb{padding:0 12px} 4362.pp-live .pp-soc a{display:none} 4363.pp-live .pp-soc{padding:0 6px} 4364.pp-live .pp-edito{padding:0 8px;font-size:11px;max-width:38vw;overflow:hidden} 4365.pp-live .pp-edito .pp-edlab{overflow:hidden;text-overflow:ellipsis} 4366/* Le bouton reste compact même après un filtre long â le fil garde sa place. */ 4367.pp-live .pp-fil{max-width:min(36vw,128px);padding:0 6px} 4368.pp-live .pp-filb{max-width:100%;overflow:hidden;padding:5px 7px;gap:5px} 4369.pp-live .pp-filab{overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:6.5ch} 4370/* Feuille en BAS d'écran : le ticker du haut reste entièrement visible. */ 4371.pp-film:not([hidden]){display:grid;grid-template-columns:1fr 1fr;gap:2px; 4372left:10px;right:10px;bottom:12px;top:auto;width:auto;min-width:0;max-width:none; 4373max-height:min(48vh,340px);overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch; 4374box-sizing:border-box;border-radius:14px;padding:8px 6px 12px} 4375.pp-filscope,.pp-filg{grid-column:1/-1} 4376.pp-filscope{max-width:none} 4377.pp-film button{padding:9px 8px;gap:8px;white-space:normal;line-height:1.25} 4378} 4379@media (max-width:430px){ 4380.pp-live .pp-edito .pp-edlab{display:none} 4381.pp-live .pp-edito{padding:0 8px;max-width:none;gap:0} 4382} 4383/* Mode compact (cases hub) : pas de réseaux sociaux, tout le fil. Et la barre 4384 tient sur UNE ligne quoi qu'il arrive â un message d'attente qui s'enroulait 4385 la faisait doubler de hauteur dans la brique (16/08). */ 4386.pp-live.pp-live-compact .pp-tk{white-space:nowrap} 4387.pp-live.pp-live-compact .pp-wt{overflow:hidden;text-overflow:ellipsis} 4388.pp-live.pp-live-compact .pp-soc{display:none} 4389.pp-live.pp-live-compact .pp-dytog{display:none} 4390.pp-live.pp-live-compact .pp-fil{display:none} 4391/* Point rouge seul (pas le mot LIVE) â libère ~48 px pour le texte. */ 4392.pp-live .pp-lb.pp-lb-dot{padding:0 10px;min-width:0} 4393.pp-live .pp-lb.pp-lb-dot i{width:8px;height:8px} 4394`;function M4(){if(document.getElementById(Am))return;const t=document.createElement("style");t.id=Am,t.textContent=O4,document.head.appendChild(t)}function k1(t){const n=`${t.headline_fr||""} ${t.headline||""} ${t.title||""}`;if(/\b(?:sells?|sold|sale of|divests?|disposed of)\b.{0,80}\b(?:stake|share|shares|interest|asset|assets|business|pipeline|unit)\b/i.test(n))return"ma";const i=String(t.rubrique||"").toLowerCase();if(i==="ma")return"ma";if(i==="levees")return"levee";if(i==="recrutements")return"recrutement";if(i==="nominations")return"nomination";if(/(r[eè]gles?\s+(?:de\s+)?l['â]?acquisitions?|strat[eé]gie\s+d['â]acquisition|l['â]acquisition\s+en\s+\d{4}|red[eé]finit.{0,48}acquisition|comment\s+l['â]ia\b|\bseo\b.{0,120}\bgeo\b)/i.test(n))return"presse";const s=/\b(acquires?|acquired|acquisition|to acquire|buyout|merger|merges?|takeover|rach[eè]te|rachat|acquiert|m&a|in talks for .{0,48}sale)\b/i.test(n),a=/\b(l[eè]ve|lev[ée]e de fonds|raises?|raised|bags?|secures?|funding rounds?|funding deals?|series [a-e]|s[ée]rie [a-d]|seed|pre-seed|tour de table|first close)\b/i.test(n);if(i==="actualites"||i==="actualités"||!i){if(s&&!a)return"ma";if(a&&!s)return"levee";if(s&&a)return"ma"}const o=t.card,c=((o==null?void 0:o.kind)||"").toLowerCase();if(c==="rachat"||c==="en_cours"||c==="ma")return"ma";if(c==="levee_une"||c==="levee")return"levee";if(c==="recrutement")return"recrutement";if(c==="nomination")return"nomination";if(c==="presse"||c==="signal")return"presse";const l=String(t.item_kind||t.deal_type||"").toLowerCase();if(["hiring","recrutement","jobs"].includes(l))return"recrutement";if(["nomination","appointment"].includes(l))return"nomination";if(["news","presse","actualité","actualite"].includes(l))return"presse";if(/\b(nomination|nomm[eé]e?\b|appoint|named\s+(?:as\s+)?(?:ceo|cfo|cto|vp)|devient\s+(?:ceo|directeur))/i.test(n))return"nomination";if(/\b(recrute(?:nt|ra|r)?\b|embauche(?:nt|ra|r)?\b|is\s+hiring|hires\s+\d+|ouvre\s+\d+\s+postes?|\+\s?\d+\s+(?:postes?|recrutements?|embauches?))/i.test(n)&&!/\b(licenci|layoff|plan\s+social)/i.test(n))return"recrutement";if(/\b(licence|license|agr[ée]ment|autorisation|accr[ée]ditation|homologation|certification)\b/i.test(n)&&!/\b(acquiert|rach[eè]te|rachat|acquisition|acquires?|merger|fusionn)\b/i.test(n))return"presse";const d=l;return d==="ma"||d.startsWith("acq")||d.includes("fusion")||d.includes("rachat")?"ma":d==="vcpe"||d.includes("lev")||d.includes("fund")||d.includes("raise")?"levee":/\b(acquires?|acquired|acquisition|rachete|rachat|merger|acquiert|m&a|in talks for .{0,48}sale)\b/i.test(n)?"ma":/\b(raises?|raised|bags?|levée|lev[ée]e|series\s+[a-e]|seed|funding rounds?|funding deals?|first close)\b/i.test(n)?"levee":"presse"}const A1=(t,n)=>t.length>n?t.slice(0,n-1).trimEnd()+"â¦":t;function S1(t,n){const r=Date.parse(t),i=Date.parse(n);return!isFinite(r)||!isFinite(i)?9999:Math.round((r-i)/864e5)}function R4(t,n){const r=Ip[n],i=Math.max(0,S1(xn(),t));return i===0?r.today:i===1?r.yesterday:i>
4394999?"":r.ago(i)}const dc=7,P4=300;function I4(t,n){const r=Ip[n],i=k1(t),s=(t.company_name||"").trim(),a=Br(t.amount_eur,n),o=i==="ma"?"ma":i==="levee"?"lv":i==="recrutement"?"jb":i==="nomination"?"nt":"pr",c=i==="ma"?r.ma:i==="levee"?r.lv:i==="recrutement"?r.hire:i==="nomination"?r.nom:r.other,l=a||(i==="ma"?r.bigMa:i==="levee"?r.bigLv:i==="recrutement"?r.bigHire:i==="nomination"?r.bigNom:r.bigOther),d=i==="ma"?"ma":i==="levee"?"levees":i==="recrutement"?"recrutements":i==="nomination"?"nominations":"actualites",p=(t._pool_date||t.published||"").slice(0,10),u=d==="actualites"?Ex(t):void 0;return{kind:"op",cls:o,rub:d,newsTheme:u,label:c,flag:cl(Kt(t.country)),name:s.length>=2&&dl(s)?s:"",amount:i==="ma"||i==="levee"?a:"",text:A1(((n==="fr"?t.headline_fr:t.headline)||t.headline||t.title||"").trim(),90),sector:t.product_category_above||"",when:R4(p,n),url:t.url||"",big:l,date:p,card:t.card}}const D4='<svg viewBox="0 0 24 24" width="15" height="15" fill="currentColor"><path d="M18.9 2H22l-7.1 8.1L23.2 22h-6.6l-5.2-6.8L5.5 22H2.4l7.6-8.7L1.2 2h6.8l4.7 6.2L18.9 2Zm-1.1 18h1.8L7.3 3.9H5.4L17.8 20Z"/></svg>',z4='<svg viewBox="0 0 24 24" width="15" height="15" fill="currentColor"><path d="M4.98 3.5a2.5 2.5 0 1 1 0 5 2.5 2.5 0 0 1 0-5ZM3 9h4v12H3V9Zm7 0h3.8v1.7h.05c.53-.95 1.83-1.95 3.77-1.95C21.4 8.75 22 11 22 14v7h-4v-6.2c0-1.5-.03-3.4-2.1-3.4-2.1 0-2.42 1.6-2.42 3.3V21h-4V9Z"/></svg>',B4='<svg viewBox="0 0 16 16" width="15" height="15" fill="none" stroke="currentColor" stroke-width="1.4"><rect x="2" y="3.5" width="12" height="10.5" rx="1.5"/><path d="M2 6.5h12M5.5 2v3M10.5 2v3"/></svg>';function U4(t,n={}){M4();const r=n.lang==="en"?"en":"fr",i=Ip[r],s=n.scope||{},a=(s.sector||"").trim().toLowerCase(),o=/^\d{4}-\d{2}-\d{2}$/.test(s.day||"")?s.day:"";let c=!0;const l=document.createElement("div");l.className="pp-live"+(n.compact?" pp-live-compact":"");const d=document.createElement("span");if(d.className="pp-lb"+(n.compact?" pp-lb-dot":""),d.appendChild(document.createElement("i")),!n.compact){const T=document.createElement("b");T.textContent="LIVE",d.appendChild(T)}d.setAttribute("aria-label","LIVE"),l.appendChild(d);const p=!!n.compact,u=T=>{try{return new Date(T+"T12:00:00Z").toLocaleDateString(r==="fr"?"fr-FR":"en-GB",{day:"numeric",month:"long"})}catch{return T}},g=()=>{const T=[];return s.sector&&T.push(String(s.sector).trim()),s.type&&T.push(s.type==="ma"?i.scopeMa:i.scopeLv),T.join(" · ")||(n.scopeLabel||"").trim()},f=()=>{const T=g(),C=T?i.scopeOn(T):"";return o?i.scopeDay(o===xn()?i.scopeToday:i.scopeOf(u(o)))+C:i.scopeWin(dc)+C},L=T=>{const C=Za[T];return C?(C.emoji||"ð")+" "+(r==="fr"?C.fr:C.en):"ð Signal"};let v="all";const y=T=>T==="all"?i.filAll:T==="fil"?i.filWire:T.startsWith("sig:")?L(T.slice(4)):T.startsWith("news:")?vb(T.slice(5),r):i.rub[T]||T,h=T=>{if(T==="all")return i.filAll;if(T==="fil")return i.filWire;if(T==="ma")return"M&A";if(T==="levees")return r==="fr"?"Levées":"Raises";if(T==="nominations")return r==="fr"?"Nomin.":"Appts";if(T==="recrutements")return r==="fr"?"Offres":"Jobs";if(T==="actualites")return r==="fr"?"Actus":"News";if(T.startsWith("sig:")){const C=Za[T.slice(4)];return C?C.emoji:"ð"}return y(T)},b=document.createElement("span");b.className="pp-fil";const x=document.createElement("button");x.type="button",x.className="pp-filb";const A=document.createTextNode(i.filAll),w=document.createElement("span");w.className="pp-filab",w.appendChild(A);const S=document.createElement("b");S.textContent="â¦",x.appendChild(w),x.appendChild(S),x.appendChild(document.createTextNode("â¾")),x.setAttribute("aria-expanded","false"),x.setAttribute("aria-haspopup","listbox"),b.appendChild(x);const E=document.createElement("div");E.className="pp-film",E.hidden=!0;const j=document.createElement("div");j.className="pp-filveil",j.hidden=!0;const O=T=>{E.hidden=!T,j.hidden=!T,x.setAttribute("aria-expanded",T?"true":"false"),T&&K()},k=[],_=[],N=T=>{const C=document.createElement("button");C.type="button",C.appendChild(document.createTextNode(y(T)));const q=document.createElement("b");C.appendChild(q),C.setAttribute("aria-pressed",T==="all"?"true":"false"),C.addEventListener("click",()=>{v=T,O(!1),te()}),E.appendChild(C),k.push({key:T,el:C,n:q})},I=T=>{const C=document.createElement("span");C.className="pp-filg",C.textContent=T,E.appendChild(C),_.push({title:T,el:C})},ce=document.createElement("span");ce.className="pp-filscope",ce.textContent=f(),E.appendChild(ce),N("all"),I(i.grpOps),N("ma"),N("levees"),I(i.grpNews),N("nominations"),N("recrutements");for(const T of Sx)T!=="media"&&N("news:"+T);N("actualites"),I(i.grpSig);for(const T of Object.keys(Za))N("sig:"+T);function K(){if(E.hidden)return;const T=l.getBoundingClientRect(),C=10,q=Math.max(160,window.innerWidth-C*2),G=window.innerWidth<=860;if(j.style.top=`${Math.max(0,Math.round(T.bottom))}px`,j.style.left="0px",j.style.right="0px",j.style.bottom="0px",G)E.style.top="auto",E.style.bottom="12px",E.style.left=`${C}px`,E.style.right=`${C}px`,E.style.width="auto",E.style.maxWidth=`${q}px`,E.style.maxHeight="min(48vh, 340px)";else{const F=x.getBoundingClientRect(),J=Math.min(Math.max(E.offsetWidth||280,240),q);let R=F.left;R+J>window.innerWidth-C&&(R=window.innerWidth-C-J),R<C&&(R=C),E.style.top=`${F.bottom+4}px`,E.style.bottom="auto",E.style.left=`${Math.round(R)}px`,E.style.right="auto",E.style.width=`${Math.round(J)}px`,E.style.maxWidth=`${q}px`,E.style.maxHeight="min(70vh, 480px)"}}x.addEventListener("click",T=>{T.stopPropagation(),O(E.hidden)}),j.addEventListener("click",()=>O(!1)),window.addEventListener("resize",K),window.addEventListener("scroll",K,!0);const pe=T=>{if(E.hidden)return;const C=T.target;!b.contains(C)&&!E.contains(C)&&O(!1)};document.addEventListener("click",pe),n.compact||(l.appendChild(b),document.body.appendChild(j),document.body.appendChild(E));const ee=document.createElement("span");ee.className="pp-win";const P=document.createElement("span");if(P.className="pp-run",ee.appendChild(P),l.appendChild(ee),!n.compact){const T=document.createElement("span");T.className="pp-soc";const C=typeof location<"u"&&location.pathname||"";if(n.showEdito===!0||n.showEdito!==!1&&/^\/actualites\/?$/i.test(C)){const F=document.createElement("button");F.type="button",F.className="pp-edito";
4394const J=document.createElement("span");J.className="pp-edico",J.textContent="ð";const R=document.createElement("span");R.className="pp-edlab",R.textContent=i.edito,F.append(J,R),F.title=i.edito,F.setAttribute("aria-label",i.edito),F.addEventListener("click",()=>{try{window.dispatchEvent(new CustomEvent("ppmap:edito"))}catch{}}),T.appendChild(F)}const G=(F,J,R)=>{const Q=document.createElement("a");Q.href=F,Q.target="_blank",Q.rel="noopener",Q.title=J,Q.setAttribute("aria-label",J),Q.innerHTML=R,T.appendChild(Q)};G("https://x.com/Proplace_co","Proplace sur X",D4),G("https://www.linkedin.com/in/alexandre-proplace/","Proplace sur LinkedIn",z4),l.appendChild(T)}let D=null;const M=T=>{D&&(D.setAttribute("aria-pressed",T?"true":"false"),D.title=T?r==="fr"?"Masquer les jours":"Hide the days":r==="fr"?"Voir les jours":"Show the days",D.setAttribute("aria-label",D.title))};n.compact||(D=document.createElement("button"),D.type="button",D.className="pp-dytog",D.innerHTML=B4,M(wd()),D.addEventListener("click",()=>E4(!wd())),l.appendChild(D));const re=T=>{var C;M(!!((C=T.detail)!=null&&C.open))};window.addEventListener(na,re),t.appendChild(l);let H=[],se=null,ie=null,he=[],Le=!1,xe=!1,oe=[];function z(T,C){const q=document.createElement("span");q.className="pp-tk"+(T.kind==="fil"?" pp-filtk":"")+(T.name||T.url||T.kind==="fil"?" pp-act":""),q.dataset.i=String(C);const G=document.createElement("span");if(G.className="pp-sg "+T.cls,G.textContent=T.label,q.appendChild(G),T.kind==="fil"){const R=document.createElement("span");return R.className="pp-wt",R.textContent=T.text,q.appendChild(R),q}const F=document.createElement("span");if(F.className="pp-fl",F.textContent=T.flag,q.appendChild(F),T.name){const R=document.createElement("span");R.className="pp-co",R.textContent=T.name,q.appendChild(R)}if(T.amount){const R=document.createElement("span");R.className="pp-am",R.textContent=T.amount,q.appendChild(R)}if(T.text){const R=document.createElement("span");R.className="pp-wt",R.textContent=T.text,q.appendChild(R)}const J=[T.sector,T.when].filter(Boolean).join(" · ");if(J){const R=document.createElement("span");R.className="pp-wt",R.textContent="· "+J,q.appendChild(R)}return q}function Y(T){const C={ma:0,levees:0,nominations:0,recrutements:0,actualites:0},q={},G={};let F=0;for(const Q of T){if(Q.kind==="signal"){const ge=Q.theme||"other";q[ge]=(q[ge]||0)+1;continue}Q.kind==="op"&&(Q.newsTheme&&Q.newsTheme!=="media"?G[Q.newsTheme]=(G[Q.newsTheme]||0)+1:Q.rub==="actualites"&&(F+=1))}const J=T.filter(Q=>Q.kind==="op"),R=T.length-J.length;if(se){let Q=0;for(const ge of km)C[ge]=Number(se[ge]||0),Q+=C[ge];if(Q>0)return C.actualites=F,{by:C,bySig:q,byNews:G,total:Q+R};for(const ge of km)C[ge]=0}if(o){const Q=new Set;for(const ge of J){const Se=Fx(ge.name);!Se||Q.has(Se)||(Q.add(Se),ge.rub!=="actualites"&&(C[ge.rub]+=1))}return C.actualites=F,!T.length&&ie&&ie>0?{by:C,bySig:q,byNews:G,total:ie}:{by:C,bySig:q,byNews:G,total:Q.size}}for(const Q of J)Q.kind==="signal"||Q.kind==="fil"||Q.rub!=="actualites"&&(C[Q.rub]+=1);return C.actualites=F,{by:C,bySig:q,byNews:G,total:T.length}}const B=(T,C,q,G,F)=>T==="all"?F:T.startsWith("news:")?G[T.slice(5)]||0:T.startsWith("sig:")?q[T.slice(4)]||0:T==="actualites"?C.actualites||0:C[T]||0;function X(T,C,q,G){for(const{key:F,el:J,n:R}of k){const Q=B(F,T,C,q,G);R.textContent=String(Q),J.setAttribute("aria-pressed",F===v?"true":"false"),J.hidden=F!=="all"&&Q===0&&F!==v}for(const F of _){if(!F)continue;let J=!1;for(let R=F.el.nextElementSibling;R&&!R.classList.contains("pp-filg");R=R.nextElementSibling)if(!R.hidden){J=!0;break}F.el.hidden=!J}A.data=h(v),x.title=y(v),S.textContent=String(B(v,T,C,q,G))}function te(){var Dt,yn;const T=o||xn(),C=he.concat(H),{by:q,bySig:G,byNews:F,total:J}=Y(C);if(X(q,G,F,J),n.onCounts)try{n.onCounts({total:J,ops:H.length,signals:he.length,byRub:{...q},bySignal:{...G},windowDays:o?1:dc})}catch{}const R=be=>v==="all"?!0:v==="ma"||v==="levees"||v==="nominations"||v==="recrutements"?be.kind==="op"&&be.rub===v:v.startsWith("news:")?be.kind==="op"&&be.newsTheme===v.slice(5):v==="actualites"?be.kind==="op"&&be.rub==="actualites"&&(!be.newsTheme||be.newsTheme==="media"):v.startsWith("sig:")?be.kind==="signal"&&(be.theme||"other")===v.slice(4):be.kind==="op"&&be.rub===v,Q=C.filter(R);Q.sort((be,ve)=>{const Je=be.date===T?0:1,me=ve.date===T?0:1;return Je!==me?Je-me:be.date<ve.date?1:be.date>ve.date?-1:0});const ge=Q.slice(0,P4),Se=Q.length-ge.length;if(oe=ge,!oe.length){if(o||a||v!=="all"){if(l.style.display="",P.textContent="",Le){const be=document.createElement("span");be.className="pp-tk";const ve=document.createElement("span");ve.className="pp-wt",ve.textContent=o?ie&&ie>
43940?i.notInFeed(ie):i.emptyDay:p?r==="en"?"Quiet this week":"Calme cette semaine":r==="en"?"No deal in this market this week.":"Aucune opération sur ce marché cette semaine.",be.appendChild(ve),P.appendChild(be)}return}l.style.display=Le&&xe?"none":"",P.textContent="";return}l.style.display="",P.textContent="";const mt=Math.max(1,Math.ceil(10/oe.length));for(let be=0;be<2*mt;be++){for(let ve=0;ve<oe.length;ve++)P.appendChild(z(oe[ve],ve));if(Se>0){const ve=document.createElement("span");ve.className="pp-tk";const Je=document.createElement("span");Je.className="pp-wt",Je.textContent=r==="fr"?`+ ${Se} autres â filtrez par rubrique pour les voir`:`+ ${Se} more â filter by section to see them`,ve.appendChild(Je),P.appendChild(ve)}}const _t=()=>{const be=P.scrollWidth||oe.length*mt*240;be<200||(P.style.animationDuration=Math.max(18,Math.round(be/130))+"s")};_t(),requestAnimationFrame(()=>{requestAnimationFrame(_t)}),window.setTimeout(_t,1200);try{(yn=(Dt=document.fonts)==null?void 0:Dt.ready)==null||yn.then(_t)}catch{}}const Ae=T=>{var F,J,R;const C=(J=(F=T.target).closest)==null?void 0:J.call(F,".pp-tk.pp-act");if(!C||!P.contains(C))return;const q=oe[Number(C.dataset.i||-1)];if(!q||p)return;if(!!document.getElementById("pp-direct-atelier")||!!document.querySelector(".atl2 .desk-list")){try{window.dispatchEvent(new CustomEvent("ppmap:focus",{detail:{name:q.name,url:q.url,text:q.text,card:q.card,kind:q.kind}}))}catch{}document.querySelector(".atl2 .desk-list")||(R=document.querySelector(".atl2 .demand")||document.getElementById("pp-direct-atelier"))==null||R.scrollIntoView({behavior:"auto",block:"nearest"});return}A4(q,{lang:r})};if(P.addEventListener("click",Ae),o&&!a&&!s.type){const T=C=>{se=C,te()};_x(o).then(C=>{if(c){if(C&&C.masthead&&(Number(C.masthead.ma)||0)+(Number(C.masthead.levees)||0)>0){T(C.masthead);return}return Cp().then(q=>{if(!c)return;const G=q.find(F=>(F.date||"").slice(0,10)===o);G&&(typeof G.count=="number"&&(ie=G.count),G.masthead?T(G.masthead):te())})}})}(n.feedUrl?fetch(n.feedUrl,{cache:"no-cache"}).then(T=>T.ok?T.json():null).catch(()=>null):gr()).then(T=>{if(!c)return;const C=T&&T.recent_ops||[],q=(T&&T.date||xn()).slice(0,10);H=[];for(const G of C){const F=k1(G);if(s.type==="ma"&&F!=="ma"||s.type==="levee"&&F!=="levee"||a&&!((G.product_category_above||"")+"|"+(G.market_tags||[]).join("|")).toLowerCase().includes(a))continue;const J=(G._pool_date||G.published||"").slice(0,10);J&&((o?J!==o:S1(q,J)>dc-1)||H.push(I4(G,r)))}Le=!0,te()});let Ke=0,st=!1;const Ct=()=>{Fp().then(T=>{if(c){he=[];for(const C of T){const q=C.hot;if(!q||typeof q.left!="number"||q.left<=0||s.type&&!(s.type==="levee"&&q.theme==="raised")||a&&!(C.sector||"").toLowerCase().includes(a))continue;const G=Za[q.theme]||{fr:"Signal",en:"Signal",cls:"nt",emoji:"ð",bigFr:"Signal",bigEn:"Signal",rub:"actualites"};he.push({kind:"signal",cls:G.cls,rub:G.rub,theme:q.theme||"other",label:(q.emoji||G.emoji)+" "+(r==="fr"?G.fr:G.en),flag:cl(C.cc),name:C.name,amount:"",text:A1(((r==="en"?q.en:q.fr)||q.fr||q.en||"").trim(),90),sector:C.sector||"",when:i.left(q.left),url:q.url||"",big:r==="fr"?G.bigFr:G.bigEn,date:(q.date||"").slice(0,10)})}xe=!0,te()}})};return o?xe=!0:typeof window.requestIdleCallback=="function"?(st=!0,Ke=window.requestIdleCallback(Ct,{timeout:2500})):Ke=window.setTimeout(Ct,2500),()=>{c=!1,window.removeEventListener(na,re),document.removeEventListener("click",pe),window.removeEventListener("resize",K),window.removeEventListener("scroll",K,!0),E.remove(),j.remove(),st&&typeof window.cancelIdleCallback=="function"?window.cancelIdleCallback(Ke):window.clearTimeout(Ke),P.removeEventListener("click",Ae),l.remove()}}function Dp({scope:t,scopeLabel:n,boxed:r=!1,compact:i=!1,showEdito:s=!1,onCounts:a}){const o=m.useRef(null),{lang:c}=ae(),l=(t==null?void 0:t.sector)||"",d=t==null?void 0:t.type,p=(t==null?void 0:t.day)||"",u=m.useRef(a);return u.current=a,m.useEffect(()=>{const g=o.current;return g?U4(g,{scope:{sector:l||void 0,type:d,day:p||void 0},scopeLabel:n,lang:c,compact:i,showEdito:s,onCounts:L=>{var v;(v=u.current)==null||v.call(u,L)}}):void 0}
4394,[l,d,p,n,c,i,s]),e.jsx("div",{ref:o,className:r?"pp-livewrap":void 0})}function V4({month:t,current:n,mode:r,theme:i,onPick:s,daysUrl:a,dayCounts:o,urlPrefix:c,editionDays:l,windowDays:d,inPlace:p,sector:u}){const g=m.useRef(null),{lang:f}=ae(),L=m.useRef(s);return L.current=s,m.useEffect(()=>{const v=g.current;return v?F4(v,{month:t,current:n,lang:f,mode:r||"navigate",theme:i||"dark",daysUrl:a,dayCounts:o,urlPrefix:c,editionDays:l,windowDays:d,inPlace:p,sector:u,onPick:h=>{var b;try{(b=L.current)==null||b.call(L,h)}catch{}}}):void 0},[t,n,f,r,i,a,o,c,l,d,p,u]),e.jsx("div",{ref:g})}function H4(t){const n=new URLSearchParams(t),r=(n.get("eval")||"").trim();if(!r)return null;const i=(n.get("memo")||"").trim().toLowerCase()==="detailed"?"detailed":void 0;return i?{name:r,memo:i}:{name:r}}function a8(t,n,r){if(!t||t.state==="anonymous")return null;const i=n==="fr",s=i?"Ouvrir mon cockpit â":"Open my cockpit â",a=!!(r!=null&&r.alreadyInCockpit);return!(r!=null&&r.publicEdition)?t.state==="ready"&&a?{title:"",body:i?"Les sociétés que vous évaluez ici sont enregistrées dans votre cockpit.":"Companies you screen here are saved in your cockpit.",cta:"",tone:"ok"}:t.state==="checking"?{title:"",body:i?"Vérification de votre espaceâ¦":"Checking your workspaceâ¦",cta:"",tone:"wait"}:null:t.state==="checking"?{title:"",body:i?"Vérification de votre espaceâ¦":"Checking your workspaceâ¦",cta:t.ciblesUrl?s:"",tone:"wait"}:t.state==="ready"?{title:i?"Vous êtes connecté":"Youâre signed in",body:i?"Cette page est lâédition publique du jour. Une évaluation ici part dans votre cockpit. Pour voir votre pipeline (à évaluer, à trancherâ¦), ouvrez-le â y compris en essai.":"This page is the public daily edition. A screen here is saved to your cockpit. To see your pipeline (To evaluate, to decideâ¦), open it â including on a trial.",cta:s,tone:"push"}:t.state==="mismatch"?{title:i?"Ce nâest pas votre cockpit":"This isnât your cockpit",body:i?"Ce navigateur est encore lié à un autre espace. Ouvrez votre cockpit pour évaluer au bon endroit. Rien nâa été enregistré.":"This browser is still tied to another workspace. Open your cockpit to screen in the right place. Nothing was saved.",cta:s,tone:"block"}:{title:i?"Vous êtes connecté":"Youâre signed in",body:i?"Cette page est lâédition publique du jour â elle nâenregistre rien chez vous. Ouvrez votre cockpit (même en essai) pour évaluer selon vos critères et retrouver vos dossiers.":"This page is the public daily edition â it doesnât save anything to your workspace. Open your cockpit (including on a trial) to screen against your criteria and find your files.",cta:s,tone:"block"}}function Y4(t){return t==="fr"?{body:"Vous êtes connecté. Cette page est lâédition publique du jour â votre pipeline est dans votre cockpit, y compris en essai.",cta:"Ouvrir mon cockpit â"}:{body:"Youâre signed in. This page is the public daily edition â your pipeline lives in your cockpit, including on a trial.",cta:"Open my cockpit â"}}function o8(t,n,r){const i=(r||"").trim(),s=t.ciblesUrl||"";if(!s||!i)return s;const a=s.includes("?")?"&":"?";return`${s}${a}${n==="open"?"sel":n}=${encodeURIComponent(i)}`}function l8(t){return t==="fr"?"Ouvrez votre cockpit pour évaluer selon vos critères. Aucune société nâa été enregistrée.":"Open your cockpit to screen against your criteria. No company was saved."}function G4(t,n,r=""){const i=!r||Ih(r)===Ih(n),s=n?i?"ready":"mismatch":"error";return{state:s,token:s==="ready"?t:"",fund:n,expectedFund:r,ciblesUrl:Ir(s==="ready"?n:r||n)}}function c8(t,n,r){const i=m.useMemo(()=>t?"":r||(n!=="default"?Hb():""),[t,n,r]),s=m.useMemo(()=>{var c;return t?"":((c=Ge())==null?void 0:c.fund_type)||""},[t]),[a,o]=m.useState(null);return m.useEffect(()=>{if(!i)return;let c=!0;return Op(i).then(l=>{c&&o({token:i,access:G4(i,(l==null?void 0:l.fund)||"",s)})}),()=>{c=!1}},[i,s]),i?(a==null?void 0:a.token)===i?a.access:{state:"checking",token:"",fund:"",expectedFund:s,ciblesUrl:s?Ir(s):""}:{state:s?"needs_token":"anonymous",token:"",fund:"",expectedFund:s,ciblesUrl:s?Ir(s):""}}const W4=m.lazy(()=>Vr(()=>import("./AtelierV2Section-Cua_IQbO.js"),__vite__mapDeps([0,1,2,3,4]))),Q4={showTicker:!1},Z4="auto",K4={en:{h1Fallback:"What moved on your market",lead:"Every deal of the day, evaluable in one click â then told in full.",readFull:"Read the full piece â",analysisKicker:"THE DAYâS ANALYSIS",analysisOf:t=>`The analysis of ${t}`,nlTitle:"Follow the daily M&A and fundraising news in France and Europe, on your own criteria.",nlBody:"M&A deals and fundraisings in France & Europe, decoded every day. Free, one-click unsubscribe.",nlCta:"Subscribe to the newsletter â",nlAll:"â¦or pick a sector newsletter â",nlTitleSector:t=>`Get ${t} deals by email`,nlBodySector:t=>"One email on the days this market moves â never the others. Free, one-click unsubscribe.",nlCtaSector:"Subscribe to this newsletter â",nlPopK:"Sector newsletter",nlPopLead:t=>`Leave your email to follow ${t}. The cockpit of this market opens right after.`,nlPopSkip:"See the cockpit without subscribing",nlDockK:"Get the morning edition by email",nlDockKSector:t=>`Get ${t} deals by email`,nlDockCta:"Subscribe",noDeal:t=>`No deal recorded on ${t}. The other editions are in the strip above.`,cockpitShift:(t,n,r)=>`No named deal on ${t} â public cockpit centred on ${n} (${r} dossiers).`,mapTitle:"One day, one radar â three readings",mapRadar:t=>`Radar · ${t} companies evaluable in the cockpit`,mapUne:(t,n)=>t>0?`In focus · ${t} pieces decoded${n?` (${n})`:""}`:"In focus · the deals we decode in full below",mapLists:t=>t?`Full lists · exhaustive by type (${t})`:"Full lists · exhaustive by type under each section",mapNote:"The day cell and the cockpit count the same radar. The TOC breaks it down: in-focus first, then the full lists.",uneLabel:"In focus",listLabel:"Full list"},fr:{h1Fallback:"Ce qui a bougé sur votre marché",lead:"Toutes les opérations de la journée, évaluables en un clic â puis racontées en entier.",readFull:"Lire lâarticle complet â",analysisKicker:"LâANALYSE DU JOUR",analysisOf:t=>`Lâanalyse du ${t}`,nlTitle:"Suivre lâactualité quotidienne du M&A et des levées de fonds en France et en Europe selon vos propres critères.",nlBody:"Les opérations M&A et levées de fonds en France & Europe, décryptées tous les jours. Gratuit, désinscription en un clic.",nlCta:"Sâabonner à la newsletter â",nlAll:"â¦ou choisir une newsletter par secteur â",nlTitleSector:t=>`Recevoir les opérations ${t} par email`,nlBodySector:t=>"Un email les jours où ce marché bouge â jamais les autres. Gratuit, désinscription en un clic.",nlCtaSector:"Sâabonner à cette newsletter â",nlPopK:"Newsletter sectorielle",nlPopLead:t=>`Laissez votre email pour suivre ${t}. Le cockpit de ce marché sâouvre juste après.`,nlPopSkip:"Voir le cockpit sans sâabonner",nlDockK:"Recevoir lâédition du matin par email",nlDockKSector:t=>`Recevoir les opérations ${t} par email`,nlDockCta:"Sâabonner",noDeal:t=>`Aucune opération relevée le ${t}. Les autres éditions sont dans la bande en haut de cette page.`,cockpitShift:(t,n,r)=>`Aucune opération nommée le ${t} â cockpit public centré sur le ${n} (${r} dossiers).`,mapTitle:"Un seul jour, un seul radar â trois lectures",mapRadar:t=>`Radar · ${t} sociétés évaluables dans le cockpit`,mapUne:(t,n)=>t>0?`à la une · ${t} décryptages${n?` (${n})`:""}`:"à la une · les opérations décryptées en entier ci-dessous",mapLists:t=>t?`Listes · lâexhaustif par type (${t})`:"Listes · lâexhaustif par type sous chaque rubrique",mapNote:"La case du jour et le cockpit comptent le même radar. Le sommaire le découpe : dâabord lâà -la-une, puis les listes complètes.",uneLabel:"à la une",listLabel:"Liste complète"}};function pc(t,n){if(!/^\d{4}-\d{2}-\d{2}$/.test(t))return"";const r=new Date(t+"T12:00:00Z");if(Number.isNaN(r.getTime()))return t;try{return r.toLocaleDateString(n==="fr"?"fr-FR":"en-GB",{weekday:"long",day:"numeric",month:"long",year:"numeric",timeZone:"UTC"})}catch{return t}}const kn=t=>/^\d{4}-\d{2}-\d{2}$/.test(t);function Sm(){var G;const{lang:t,localizePath:n}
4394=ae(),r=K4[t],{slug:i=""}=yp(),s=(i||"").trim().toLowerCase(),a=nr.find(F=>F.id===s),[o,c]=m.useState(()=>{if(!s||typeof window>"u")return!i;try{return localStorage.getItem(Em(s))==="1"}catch{return!1}}),[l,d]=m.useState(()=>{if(!s||typeof window>"u")return!1;try{return localStorage.getItem(Nm(s))==="1"}catch{return!1}}),p=m.useCallback(()=>{if(s){try{localStorage.setItem(Em(s),"1")}catch{}c(!0)}},[s]),u=m.useCallback(()=>{if(s){try{localStorage.setItem(Nm(s),"1")}catch{}d(!0)}p()},[s,p]),g=(a==null?void 0:a.label)||"";ht(a?{en:{title:`${a.label} â live M&A and fundraisings | Proplace`,description:`Every ${a.label} deal, evaluable in one click â ticker, editorial and cockpit scoped to this market.`},fr:{title:`${a.labelFr} â M&A et levées en direct | Proplace`,description:`Toutes les opérations ${a.labelFr}, évaluables en un clic â ticker, édito et cockpit bornés à ce marché.`}}:{en:{title:"Live â what moved on your market today | Proplace",description:"Todayâs fundraisings and M&A deals, screened by Stan: every company evaluable in one click, with its verdict and reason."},fr:{title:"Le direct â ce qui bouge aujourdâhui sur votre marché | Proplace",description:"Levées de fonds et opérations M&A du jour, criblées par Stan : chaque société évaluable en un clic, avec son verdict et son motif."}});const[f,L]=m.useState(""),[v,y]=m.useState(()=>new Set),[h,b]=m.useState(null),[x,A]=m.useState(null),[w,S]=m.useState(""),[E,j]=m.useState(()=>new Map),O=m.useRef(E);O.current=E;const k=m.useRef(h);k.current=h;const[_,N]=m.useState(!1),[I,ce]=m.useState(!1),[K,pe]=m.useState(!1),[ee,P]=m.useState(""),[D,M]=m.useState(g),re=m.useRef(g);re.current=D;const[H,se]=m.useState([]),ie=m.useRef(s);ie.current=s;const[he,Le]=m.useState(()=>typeof window>"u"?"":new URLSearchParams(window.location.search).get("q")||""),[xe,oe]=m.useState(0),[z,Y]=m.useState(null);m.useEffect(()=>{document.body.classList.add("pp-desk");const F=document.querySelector(".pp-flow .pp-band, body.pp-desk .pp-band"),J=()=>{const Q=Math.round((F==null?void 0:F.getBoundingClientRect().height)||44);document.documentElement.style.setProperty("--pp-live-h",`${Q}px`)};J();const R=F&&typeof ResizeObserver<"u"?new ResizeObserver(J):null;return F&&R&&R.observe(F),window.addEventListener("resize",J),()=>{document.body.classList.remove("pp-desk"),R==null||R.disconnect(),window.removeEventListener("resize",J)}},[]),m.useEffect(()=>{if(!f)return;let F=!0;return _x(f).then(J=>{F&&Y(J)}),()=>{F=!1}},[f]),m.useEffect(()=>{let F=!0;return Promise.all([j1(),gr(),Tx()]).then(async([J,R,Q])=>{var yr;if(!F)return;const ge=new Map;for(const Ne of J){const He=((Ne==null?void 0:Ne.date)||"").slice(0,10),yt=(Ne==null?void 0:Ne.url)||"",Jt=(Ne==null?void 0:Ne.url_en)||(yt?"/en"+yt:""),$t=t==="en"&&Jt||yt;He&&$t&&ge.set(He,$t)}j(ge);const Se=R;b(Q);const mt=((Q==null?void 0:Q.date)||"").slice(0,10);kn(mt)&&P(mt);const _t=typeof window>"u"?"":(new URLSearchParams(window.location.search).get("jour")||"").trim(),Dt=[...ge.keys()].filter(kn).sort(),yn=new Map,be=new Map;for(const Ne of(Se==null?void 0:Se.recent_ops)||[]){const He=(Ne._pool_date||Ne.published||"").slice(0,10),yt=(Ne.company_name||"").trim().toLowerCase();!He||!yt||(be.has(He)||be.set(He,new Set),be.get(He).add(yt))}be.forEach((Ne,He)=>yn.set(He,Ne.size));const ve=[...yn.keys()].filter(kn).sort(),Je=kn(_t);ce(Je);const me=(Je?_t:"")||(kn(mt)?mt:"")||Dt[Dt.length-1]||ve[ve.length-1]||((Se==null?void 0:Se.date)||"").slice(0,10)||xn();L(me);const Re=ge.get(me)||(Q==null?void 0:Q.url)||"";S(Re),Je&&kn(me)&&me!==mt&&Re&&za(Re,me).then(Ne=>{F&&(ei(me,Ne),A(Ne),oe(He=>He+1))});const jn=new Set;let Ue=0;for(const Ne of(Se==null?void 0:Se.recent_ops)||[]){const He=(Ne._pool_date||Ne.published||"").slice(0,10),yt=(Ne.company_name||"").trim().toLowerCase();if(He===me&&yt&&jn.add(yt),He===me){const Jt=qp(Ne);(Jt==="ma"||Jt==="levee")&&(Ue+=1)}}y(jn),pe(!Je&&Ue<3);const zi=typeof window>"u"?"":(new URLSearchParams(window.location.search).get("secteurs")||"").split(",")[0].trim().toLowerCase(),wn=ie.current||zi;if(wn){const Ne=new Set;for(const jt of(Se==null?void 0:Se.recent_ops)||[]){const dn=(jt.product_category_above||"").trim();dn&&Ne.add(dn)}
4394const He=[...Ne].find(jt=>py(jt)===wn)||((yr=nr.find(jt=>jt.id===wn))==null?void 0:yr.label)||"";M(He);const yt=await Cp();if(!F)return;const Jt=yt.filter(jt=>(jt.sector_articles||[]).includes(wn)).map(jt=>(jt.date||"").slice(0,10)).filter(kn);se(Jt);const $t=[...Jt].sort().pop()||me;if(kn($t)){const jt=`/actualites/operations/secteur/${wn}/${$t}/`,dn=await za(jt,$t);if(!F)return;dn&&(ei($t,dn,He),A(dn),S(jt),oe(Bi=>Bi+1))}}N(!0)}),()=>{F=!1}},[t]);const B=typeof window<"u"&&!!window.location.search.replace(/^\?/,"").length;m.useEffect(()=>{if(!B)return;const F=document.createElement("meta");return F.name="robots",F.content="noindex,follow",document.head.appendChild(F),()=>{try{document.head.removeChild(F)}catch{}}},[B]);const X=m.useMemo(()=>{const F=typeof window>"u"?null:new URLSearchParams(window.location.search),J=((F==null?void 0:F.get("type"))||"").trim(),R=L1(J),Q=v1(F),ge=((F==null?void 0:F.get("jour"))||"").trim(),mt=!!D&&!kn(ge)||K;return{day:Q||mt?"":f,win:Q?"all":mt?"7":"all",sector:D?[D]:[],search:he,acquirer:Q,...R?{dealKind:R}:{}}},[f,D,he,K]),te=m.useCallback(()=>{var F;typeof document>"u"||(F=document.getElementById("pp-direct-atelier"))==null||F.scrollIntoView({behavior:"smooth",block:"start"})},[]),[Ae,Ze]=m.useState(()=>typeof window>"u"?null:H4(window.location.search)),Ke=m.useCallback((F,J=!1)=>{var Q;const R=F.trim();if(R){if(J){const ge=String(((Q=Ge())==null?void 0:Q.fund_type)||"");if(ge){const Se=Ir(ge);window.location.assign(Se+(Se.includes("?")?"&":"?")+"eval="+encodeURIComponent(R));return}try{window.dispatchEvent(new CustomEvent("ppmap:signup",{detail:{name:R}}))}catch{}return}if(!v.has(R.toLowerCase())){te(),Ze(ge=>({name:R,request:((ge==null?void 0:ge.request)||0)+1}));return}Le(R),oe(ge=>ge+1),te()}},[v,te]),st=m.useMemo(()=>{const F=typeof window>"u"?"":(new URLSearchParams(window.location.search).get("type")||"").trim().toLowerCase();return{sector:D||void 0,day:D||K?void 0:f||void 0,type:F==="ma"||F==="levee"?F:F==="acquereur"||F==="acquereurs"?"ma":void 0}},[f,K,D]),Ct=m.useRef(!1);m.useEffect(()=>{if(Ct.current||!_||typeof window>"u")return;const F=new URLSearchParams(window.location.search),J=(F.get("eval")||"").trim(),R=J||(F.get("search")||"").trim(),Q=(F.get("similar")||"").trim();if(Ct.current=!0,R&&Ke(R,!!J),Q){try{window.dispatchEvent(new CustomEvent("ppmap:similar",{detail:{name:Q}}))}catch{}R||Ke(Q,!1)}},[_,Ke]),m.useEffect(()=>{const F=J=>{var Dt,yn,be;const R=String(((Dt=J.detail)==null?void 0:Dt.day)||"").slice(0,10);if(!/^\d{4}-\d{2}-\d{2}$/.test(R))return;L(R),ce(!0);const Q=(((yn=k.current)==null?void 0:yn.date)||"").slice(0,10),ge=ie.current,Se=ge?`/actualites/operations/secteur/${ge}/${R}/`:O.current.get(R)||R===Q&&((be=k.current)==null?void 0:be.url)||"";S(Se||"");const mt=gr().then(ve=>{const Je=new Set;for(const me of(ve==null?void 0:ve.recent_ops)||[]){const Re=(me._pool_date||me.published||"").slice(0,10),jn=(me.company_name||"").trim().toLowerCase();Re===R&&jn&&Je.add(jn)}y(Je)}),_t=ge?za(Se,R).then(ve=>{ei(R,ve,re.current),A(ve)}):R===Q?Promise.resolve().then(()=>{ei("",null),A(null)}):Se?za(Se,R).then(ve=>{ei(R,ve),A(ve)}):Promise.resolve().then(()=>{ei(R,null),A(null)});Promise.all([mt,_t]).then(()=>oe(ve=>ve+1))};return window.addEventListener("pp-edition-day",F),()=>window.removeEventListener("pp-edition-day",F)},[]);const T=!_||!I||!f||!ee||ee===f?"":r.cockpitShift(pc(ee,t),pc(f,t),v.size),C=((G=Ge())==null?void 0:G.fund_type)||"",q=C?Y4(t):null;return e.jsxs(e.Fragment,{children:[e.jsx(Di,{active:"direct"}),e.jsxs("div",{className:"ppd pp-flow has-nldock",children:[e.jsx("style",{children:t6}),e.jsxs("div",{className:"pp-band",children:[e.jsx(Dp,{scope:st,showEdito:!0}),e.jsx(V4,{current:f||void 0,inPlace:!0,sector:D||void 0,windowDays:D?7:void 0,urlPrefix:s?`/actualites/operations/secteur/${s}/`:void 0,editionDays:H.length?H:void 0})]}),q&&e.jsx("div",{className:"ppd-ckpush-bar",children:e.jsxs("div",{className:"ppd-ckpush",children:[e.jsx("p",{children:q.body}),e.jsx("a",{href:Ir(C),children:q.cta})]})}),e.jsx("div",{id:"pp-direct-atelier",className:"ppd-anchor"}),T?e.jsx("div",{className:"ppd-appwrap",children:e.jsx("p",{className:"ppd-shift",children:T})}
4394):null,s&&!o&&e.jsx(e6,{label:(t==="fr"?a==null?void 0:a.labelFr:a==null?void 0:a.label)||D||s,sector:s,cta:r.nlDockCta,t:r,onUnlock:u,onSkip:p}),!s||o?e.jsx($4,{ready:_,gen:xe,initialFilters:X,evaluation:Ae,empty:_&&!D&&v.size===0,emptyLabel:r.noDeal(pc(f,t))}):e.jsx("div",{className:"ppd-appwrap",children:e.jsx("p",{className:"ppd-nodeal",children:r.nlPopLead((t==="fr"?a==null?void 0:a.labelFr:a==null?void 0:a.label)||D||"")})}),e.jsx(Nt,{}),(!s||o&&!l)&&e.jsx(X4,{sector:s||"general",title:s?r.nlDockKSector((t==="fr"?a==null?void 0:a.labelFr:a==null?void 0:a.label)||D||s):r.nlDockK,cta:r.nlDockCta,allLabel:s?void 0:r.nlAll,allHref:s?void 0:"/actualites/operations/secteurs/",onSubscribed:s?u:void 0})]})]})}class J4 extends m.Component{constructor(){super(...arguments);eu(this,"state",{err:!1})}static getDerivedStateFromError(){return{err:!0}}render(){return this.state.err?e.jsxs("p",{className:"ppd-nodeal",children:["Le cockpit nâa pas pu sâouvrir."," ",e.jsx("button",{type:"button",onClick:()=>window.location.reload(),children:"Recharger"})]}):this.props.children}}function $4({ready:t,gen:n,initialFilters:r,evaluation:i,empty:s,emptyLabel:a}){const o=m.useRef(null),[c,l]=m.useState(!!i);m.useEffect(()=>{i&&l(!0)},[i]),m.useEffect(()=>{const p=o.current;if(!p)return;const u=new IntersectionObserver(g=>{g[0]&&g[0].isIntersecting&&(l(!0),u.disconnect())},{rootMargin:"600px"});return u.observe(p),()=>u.disconnect()},[]);const d=c&&t;return s&&!i?e.jsx("div",{className:"ppd-appwrap",ref:o,children:e.jsx("p",{className:"ppd-nodeal",children:a})}):e.jsx("div",{className:"ppd-appwrap",ref:o,children:e.jsx("div",{className:"ppd-app",style:{"--atelier-h":Z4},children:d?e.jsx(J4,{children:e.jsx(m.Suspense,{fallback:e.jsx("div",{style:{minHeight:120}}),children:e.jsx(W4,{capsOverride:Q4,source:"ops",initialFilters:r,initialEvaluation:i},n)})}):e.jsx("div",{style:{minHeight:120}})})})}function Em(t){return`pp-nl-seen:${t}`}function Nm(t){return`pp-nl-sub:${t}`}function X4({sector:t,title:n,cta:r,allLabel:i,allHref:s,onSubscribed:a}){const[o,c]=m.useState(""),[l,d]=m.useState(""),{state:p,errMsg:u,submit:g,copy:f}=fl(t);return e.jsx("div",{className:"ppd-nldock",role:"region","aria-label":n,children:e.jsxs("form",{className:"ppd-nldock-form",noValidate:!0,onSubmit:async L=>{L.preventDefault(),await g(o,l)&&(c(""),a==null||a())},children:[e.jsx("p",{className:"ppd-nldock-k",children:n}),e.jsxs("div",{className:"ppd-nldock-row",children:[e.jsx("input",{type:"email",required:!0,value:o,placeholder:f.placeholder,"aria-label":f.placeholder,onChange:L=>c(L.target.value)}),e.jsx("input",{type:"text",name:"website",value:l,tabIndex:-1,autoComplete:"off","aria-hidden":"true",className:"ppd-nlhp",onChange:L=>d(L.target.value)}),e.jsx("button",{className:"ppd-nlcta",type:"submit",disabled:p==="sending",children:p==="sending"?f.sending:r}),i&&s?e.jsx("a",{className:"ppd-nlall",href:s,children:i}):null]}),(p==="ok"||p==="err")&&e.jsx("p",{className:"ppd-nlmsg"+(p==="err"?" err":""),"aria-live":"polite",children:p==="ok"?f.ok:u})]})})}function e6({label:t,sector:n,cta:r,t:i,onUnlock:s,onSkip:a}){const[o,c]=m.useState(""),[l,d]=m.useState(""),{state:p,errMsg:u,submit:g,copy:f}=fl(n);return e.jsx("div",{className:"ppd-nlpop",role:"dialog","aria-modal":"true","aria-labelledby":"ppd-nlpop-h",children:e.jsxs("div",{className:"ppd-nlpop-stack",children:[e.jsxs("div",{className:"ppd-nlpop-card",children:[e.jsx("p",{className:"ppd-nlpop-k",children:i.nlPopK}),e.jsx("h2",{id:"ppd-nlpop-h",children:i.nlTitleSector(t)}),e.jsx("p",{className:"ppd-nlpop-lead",children:i.nlPopLead(t)}),e.jsxs("form",{className:"ppd-nlpop-form",noValidate:!0,onSubmit:async L=>{L.preventDefault(),await g(o,l)&&(c(""),s())},children:[e.jsx("input",{type:"email",required:!0,value:o,placeholder:f.placeholder,"aria-label":f.placeholder,onChange:L=>c(L.target.value)}),e.jsx("input",{type:"text",name:"website",value:l,tabIndex:-1,autoComplete:"off","aria-hidden":"true",className:"ppd-nlhp",onChange:L=>d(L.target.value)}),e.jsx("button",{className:"ppd-nlcta",type:"submit",disabled:p==="sending",children:p==="sending"?f.sending:r}),(p==="ok"||p==="err")&&e.jsx("p",{className:"ppd-nlmsg"+(p==="err"?" err":""),"aria-live":"polite",children:p==="ok"?f.ok:u})]})]}),e.jsx("button",{type:"button",className:"ppd-nlpop-tab",onClick:a,children:i.nlPopSkip})]})})}const t6=` 4395.ppd{font-family:var(--pp-body);color:#16233A; 4396background:#fff;-webkit-font-smoothing:antialiased} 4397.ppd,.ppd *{box-sizing:border-box} 4398.ppd button,.ppd input,.ppd select{font-family:inherit} 4399.ppd-wrap{max-width:1200px;margin:0 auto;padding:0 32px} 4400.ppd-bandwrap{max-width:none;margin:0;padding:0} 4401.ppd-bandwrap .pp-band{border-left:0;border-right:0} 4402.pp-flow .pp-band{position:sticky;top:var(--pp-gap,60px);z-index:45;border-left:0;border-right:0} 4403.ppd-ckpush-bar{background:#E7F6EE;border-bottom:1px solid #C8EBD6} 4404.ppd-ckpush{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap; 4405 max-width:1200px;margin:0 auto;padding:10px 32px} 4406.ppd-ckpush p{margin:0;font-size:13.5px;line-height:1.45;color:#16233A;flex:1 1 16em} 4407.ppd-ckpush a{flex:none;display:inline-flex;align-items:center;justify-content:center; 4408 padding:8px 14px;border-radius:999px;background:#12A150;color:#fff;font-weight:700; 4409 font-size:13.5px;text-decoration:none;white-space:nowrap} 4410.ppd-ckpush a:hover{background:#0E8A44;color:#fff} 4411@media (max-width:860px){ 4412 .pp-flow .pp-band{position:static!important;top:auto!important;z-index:auto} 4413 .ppd-ckpush{padding:10px 12px} 4414 .ppd-ckpush a{width:100%} 4415} 4416/* Liste courte (2 sociétés) : le footer reste en bas d'écran, pas collé à la liste. */
4417.ppd.pp-flow{min-height:calc(100dvh - var(--pp-gap,60px));display:flex;flex-direction:column} 4418.ppd.pp-flow .ppd-appwrap{flex:1 1 auto} 4419.ppd.pp-flow .ppf{margin-top:auto;flex:none} 4420 4421/* ââ chapeaux et titres (miroir .h3-eyeb / .h3-h1 / .h3-h2 / .h3-lead) ââ */ 4422.ppd-eyeb{display:flex;align-items:center;gap:12px;margin:0 0 16px; 4423font-family:var(--pp-body);font-size:12px;font-weight:500;color:#8FA0B8;font-variant-numeric:tabular-nums} 4424.ppd-eyeb::before{content:"";display:block;width:22px;height:2px;background:#12A150; 4425border-radius:2px;flex:none} 4426/* Titre du jour : UNE ligne sur desktop (retour 11/08 â le titre long 4427 « Analyse des opérations M&A & levée de fonds du JJ mois » cassait en 2). 4428 Mobile : 2 lignes max, clamp plus bas. */ 4429.ppd-h1{margin:0;font-size:clamp(18px,2.35vw,32px);line-height:1.18;letter-spacing:-.03em; 4430font-weight:700;text-wrap:balance;max-width:none;overflow-wrap:anywhere} 4431@media (min-width:960px){ 4432.ppd-h1{white-space:nowrap;text-wrap:nowrap;overflow:hidden;text-overflow:ellipsis; 4433font-size:clamp(21px,1.95vw,29px)}} 4434.ppd-shift{margin:14px 0 0;padding:12px 0 0;font-size:13.5px;line-height:1.45;color:#4B5E78; 4435border-top:1px solid rgba(15,29,51,.08)} 4436.ppd-h2{margin:0;font-size:clamp(23px,2.6vw,33px);line-height:1.14;letter-spacing:-.036em; 4437font-weight:700;text-wrap:balance;max-width:none} 4438.ppd-lead{margin:22px 0 0;font-size:clamp(16px,1.3vw,18.5px);line-height:1.66;color:#4B5E78; 4439max-width:none;text-wrap:pretty} 4440.ppd-sub{margin:12px 0 0;font-size:15px;line-height:1.66;color:#4B5E78;max-width:none} 4441 4442/* Carte de lecture unifiée (radar = cockpit = case jour) */ 4443.ppd-map{margin:28px 0 0;padding:18px 20px;border:1px solid #E3E8F0;background:#F9FBFD;border-radius:12px} 4444.ppd-map-h{margin:0 0 10px;font-family:var(--pp-body);font-size:12px; 4445font-weight:600;color:#12A150;font-variant-numeric:tabular-nums} 4446.ppd-map-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:8px} 4447.ppd-map-list li{font-size:14.5px;line-height:1.45;color:#16233A} 4448.ppd-map-list li strong{font-weight:700} 4449.ppd-map-note{margin:12px 0 0;font-size:13px;line-height:1.5;color:#4B5E78} 4450/* UN SEUL masthead â désormais celui DU CORPS serveur (bande cockpit en tête 4451 des boîtes moteur) : le bloc SPA « L'édition du jour » a déménagé dans le 4452 pli « à propos de cette édition » (14/08 soir â plus de pile d'en-tête). */ 4453.ppd-plus{margin:26px 0 0;background:#F9FBFD;border:1px solid #E3E8F0;border-radius:8px} 4454.ppd-plus>summary{cursor:pointer;list-style:none;padding:11px 16px; 4455font-family:var(--pp-body);font-size:12px;font-weight:600;color:#16233A;font-variant-numeric:tabular-nums} 4456.ppd-plus>summary::-webkit-details-marker{display:none} 4457.ppd-plus>summary::after{content:" â¾";color:#0E8A44} 4458.ppd-plus[open]>summary::after{content:" â´"} 4459.ppd-plus .ppd-plus-b{padding:14px 16px 18px;background:#fff; 4460border-top:1px solid #E3E8F0;border-radius:0 0 8px 8px} 4461.ppd-plus .ppd-plus-b .ppd-h1{font-size:clamp(19px,2vw,26px);margin:6px 0 10px} 4462.ppd-plus .ppd-plus-b .ppd-lead{margin:0 0 12px} 4463 4464/* ââ ⢠l'atelier ââ */ 4465.ppd-anchor{scroll-margin-top:74px} 4466.ppd-appwrap{max-width:none;margin:0;padding:0} 4467/* la journée sans opération : une ligne entre deux filets, pas un cadre vide */ 4468.ppd-nodeal{margin:0;padding:26px 0;font-size:15px;color:#4B5E78; 4469border-top:1px solid rgba(15,29,51,.10);border-bottom:1px solid rgba(15,29,51,.10)} 4470.ppd-app{background:#fff;border:1px solid rgba(15,29,51,.10);overflow:hidden; 4471box-shadow:0 1px 2px rgba(15,29,51,.04),0 24px 54px -34px rgba(15,29,51,.30)} 4472.ppd-seolink{display:inline-block;margin:0 0 14px;font-family:var(--pp-body); 4473font-size:12px;color:#0E8A44;text-decoration:none;border-bottom:1px solid rgba(14,127,63,.35);font-weight:600;font-variant-numeric:tabular-nums} 4474.ppd-seolink:hover{border-bottom-color:#0E8A44} 4475/* la ligne de repli des autres jours (« Ãdition du ⦠») garde l'ancien style */ 4476.ppd-lead2{margin:26px 0 16px;font-size:15px;line-height:1.72;color:#46566B; 4477font-weight:400} 4478.ppd-lead2 strong{font-weight:650;color:#16233A;letter-spacing:-.01em} 4479@media (max-width:1264px){.ppd-app{border-left:0;border-right:0}} 4480/* Cockpit = la page. Hauteur naturelle, « Afficher plus » allonge la liste. 4481 â ï¸ AtelierFrame est monté HORS de .ppd : sélecteurs depuis .ppd-app. */ 4482.ppd-app{border:0!important;box-shadow:none!important;overflow:visible; 4483 background:#F5F7FA!important} 4484.ppd-app .atl2{height:auto!important;max-height:none!important;overflow:visible!important; 4485 background:transparent} 4486/* Même gouttière 28 px : planisphère, Coller une URL, liste+édito. */ 4487.ppd-app .atl2.ops{--v3-pad:28px} 4488.ppd-app .atl2.ops .fzone{margin:12px 0 20px;background:transparent} 4489.ppd-app .atl2.ops .fzone>.conts,.ppd-app .atl2.ops .fzone>.contpick{ 4490 padding-left:28px!important;padding-right:28px!important;box-sizing:border-box} 4491.ppd-app .atl2.ops .stage:not(.folded){ 4492 margin:0 28px!important;border:1px solid #E3E8F0!important; 4493 border-radius:12px!important;background:#F2F6FA!important} 4494.ppd-app .atl2.ops .eval-stick{padding:0!important;background:#fff!important} 4495.ppd-app .atl2.ops .demand{margin:16px 28px 0!important;padding:18px 22px!important; 4496 border:1px solid #E3E8F0!important;border-radius:14px!important;background:#fff!important; 4497 box-sizing:border-box} 4498.ppd-app .atl2.ops .desk{ 4499 display:grid!important;grid-template-columns:minmax(0,1.6fr) minmax(280px,.9fr)!important; 4500 gap:24px!important;align-items:start!important; 4501 margin:24px 28px 32px!important;padding:0!important; 4502 border:0!important;border-top:0!important;background:transparent!important} 4503.ppd-app .atl2.ops .desk-list{ 4504 border:1px solid #E3E8F0!important;border-radius:12px!important; 4505 background:#fff!important;min-width:0;overflow:visible!important} 4506.ppd-app .atl2.ops .readpane, 4507.ppd-app .atl2.ops .readpane.is-edito,
4508body.pp-desk .ppd-app .atl2.ops .readpane, 4509body.pp-desk .ppd-app .atl2.ops .readpane.is-edito{ 4510 background:transparent!important;border:0!important;border-left:0!important; 4511 box-shadow:none!important;padding:0!important;gap:14px!important; 4512 display:flex!important;flex-direction:column!important} 4513.ppd-app .atl2.ops .readpane .zoom, 4514.ppd-app .atl2.ops .readpane.is-edito .zoom, 4515.ppd-app .atl2.ops .readpane .card.ops-open{ 4516 border:1px solid #E3E8F0!important;border-radius:14px!important; 4517 background:#fff!important;max-width:none!important;margin:0!important; 4518 padding:24px 28px 32px!important;box-sizing:border-box!important; 4519 box-shadow:none!important} 4520.ppd-app .atl2.ops .readpane.is-edito .zoom-h{padding-right:8px;overflow-wrap:anywhere} 4521.ppd-app .atl2.ops .readpane .edito-go{ 4522 border:1px solid #E3E8F0!important;border-radius:12px!important; 4523 background:#fff!important;margin:0!important} 4524/* LISTE | LIGNE | MAXI : le segment de /cibles, pas des pilules cassées */ 4525.ppd-app .atl2.ops .listhead .dens{ 4526 display:inline-flex!important;align-items:stretch!important;height:30px!important; 4527 box-sizing:border-box!important;border:1px solid #E3E8F0!important; 4528 border-radius:8px!important;overflow:hidden!important;background:#fff!important; 4529 gap:0!important} 4530.ppd-app .atl2.ops .listhead .dens button{ 4531 display:inline-flex!important;align-items:center!important;justify-content:center!important; 4532 border:0!important;border-radius:0!important;background:transparent!important; 4533 height:100%!important;width:34px!important;padding:0!important;box-shadow:none!important; 4534 font:inherit!important;color:#8FA0B8!important;cursor:pointer;white-space:nowrap} 4535.ppd-app .atl2.ops .listhead .dens button i{display:block!important;width:16px!important;height:12px!important;position:relative!important} 4536.ppd-app .atl2.ops .listhead .dens button b{display:none!important} 4537.ppd-app .atl2.ops .listhead .dens button[aria-pressed="true"], 4538.ppd-app .atl2.ops .listhead .dens button.on{ 4539 background:#0F1D33!important;color:#fff!important;border:0!important} 4540/* Champ URL : pilule /cibles (point d'état, pas un cadre). */ 4541.ppd-app .atl2.ops .demand .drow{display:flex!important;flex-wrap:nowrap!important; 4542 align-items:center!important;gap:10px!important;min-width:0!important} 4543.ppd-app .atl2.ops .demand .dfield{ 4544 display:flex!important;align-items:center!important;gap:10px!important; 4545 flex:1 1 auto!important;min-width:0!important;box-sizing:border-box; 4546 border:1px solid #E3E8F0!important;border-radius:999px!important; 4547 padding:0 8px 0 18px!important;background:#F9FBFD!important;box-shadow:none!important} 4548.ppd-app .atl2.ops .demand .dfield::before{content:"";width:8px;height:8px;flex:none; 4549 border-radius:50%;background:#C9D6E6} 4550.ppd-app .atl2.ops .demand .dfield:focus-within{border-color:#9ED9B8!important; 4551 box-shadow:0 0 0 4px rgba(18,161,80,.14)!important;background:#fff!important} 4552.ppd-app .atl2.ops .demand .dfield:focus-within::before{background:#12A150} 4553.ppd-app .atl2.ops .demand .dfield input{border:0!important;background:transparent!important; 4554 box-shadow:none!important;outline:none!important;padding:13px 0!important; 4555 font:inherit!important;font-size:14px!important;min-width:0;flex:1} 4556.ppd-app .atl2.ops .demand .dacts{display:flex!important;align-items:center!important; 4557 gap:10px!important;flex:none!important;flex-wrap:nowrap!important;min-width:0!important} 4558.ppd-app .atl2.ops .demand .evalbtn{height:42px!important;border-radius:999px!important; 4559 padding:0 22px!important;box-sizing:border-box} 4560/* Site | Source : UN segment, pas deux pastilles décalées */ 4561.ppd-app .atl2.ops .demand .dacts .sitepair{ 4562 display:inline-flex!important;align-items:stretch!important;flex-direction:row!important; 4563 height:42px!important;box-sizing:border-box;flex:none!important; 4564 border:1px solid #E3E8F0!important;border-radius:999px!important; 4565 overflow:hidden!important;background:#fff!important} 4566.ppd-app .atl2.ops .demand .dacts .sitepair .viewbtn.sm{ 4567 display:inline-flex!important;flex-direction:row!important;flex-wrap:nowrap!important; 4568 align-items:center!important;justify-content:center!important; 4569 height:100%!important;margin:0!important;padding:0 14px!important; 4570 border:0!important;border-radius:0!important;background:transparent!important; 4571 color:#4B5E78!important;font-size:12.5px!important;font-weight:600!important; 4572 text-decoration:none!important;white-space:nowrap!important;box-shadow:none!important} 4573.ppd-app .atl2.ops .demand .dacts .sitepair .viewbtn.sm + .viewbtn.sm{ 4574 border-left:1px solid #E3E8F0!important} 4575.ppd-app .atl2.ops .demand .dacts .sitepair .viewbtn.sm:not(.off){ 4576 background:#0F1D33!important;color:#fff!important} 4577.ppd-app .atl2.ops .demand .dacts .sitepair .viewbtn.sm.off{opacity:.4;background:transparent!important} 4578.ppd-app .atl2.ops .demand .dacts .sitepair .viewbtn.sm.searching{ 4579 background:#E7F6EE!important;color:#0E8A44!important;opacity:1} 4580.ppd-app .atl2.ops .demand .dacts .sitepair .xwin{display:inline!important;flex:none; 4581 font-size:11px;margin-left:2px} 4582body.pp-desk .ppd-app .atl2.ops .eval-stick{ 4583 z-index:33!important;background:#fff!important; 4584 box-shadow:none!important}
4585/* Rideau blanc UNIQUEMENT au sticky â au repos il recouvrait le haut de 4586 la box « 64 dans l'édition du jour » (bord + radius). */ 4587body.pp-desk .ppd-app .atl2.ops.url-stuck .eval-stick, 4588body.pp-desk .ppd-app .atl2.ops .eval-stick.is-stuck{ 4589 padding-left:0!important;padding-right:0!important;padding-bottom:0!important; 4590 background:#fff!important;box-shadow:0 28px 0 #fff!important} 4591body.pp-desk .ppd-app .atl2.ops.url-stuck .demand{ 4592 border:0!important;border-radius:0!important} 4593body.pp-desk .ppd-app .atl2.ops.url-stuck .desk{margin-top:0!important} 4594body.pp-desk .ppd-app .atl2.ops.url-stuck .desk-list{ 4595 border-radius:0!important;border-top:0!important} 4596body.pp-desk .ppd-app .atl2.ops .listhead, 4597body.pp-desk .ppd-app .atl2.ops .listhead.mapoff{ 4598 z-index:34!important;background:#fff!important; 4599 top:calc(var(--pp-gap,60px) + var(--pp-live-h,0px) + var(--demand-h,0px) - 1px)!important; 4600 box-shadow:none!important;border-radius:12px 12px 0 0} 4601body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead, 4602body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead.mapoff{ 4603 box-shadow:0 -8px 0 #fff,0 1px 0 #E3E8F0!important;border-radius:0!important} 4604body.pp-desk .ppd-app .atl2.ops.list-short .eval-stick{ 4605 box-shadow:none!important} 4606body.pp-desk .ppd-app .atl2.ops.list-short .desk-list{ 4607 position:sticky!important;z-index:32;align-self:start; 4608 top:calc(var(--pp-gap,60px) + var(--pp-live-h,0px) + var(--demand-h,0px))!important} 4609body.pp-desk .ppd-app .atl2.ops.list-short .listhead, 4610body.pp-desk .ppd-app .atl2.ops.list-short .listhead.mapoff, 4611body.pp-desk .ppd-app .atl2.ops.list-short .desk-list .listhead{ 4612 position:static!important;top:auto!important;box-shadow:none!important} 4613body.pp-desk .ppd-app .atl2.ops .desk-list .list .row, 4614body.pp-desk .ppd-app .atl2.ops .desk-list .list .dcard{z-index:0} 4615@media (max-width:1000px){ 4616 .ppd-app .atl2.ops .desk{grid-template-columns:1fr!important;gap:16px!important; 4617 margin-left:14px!important;margin-right:14px!important} 4618 .ppd-app .atl2.ops .stage:not(.folded){margin-left:14px!important;margin-right:14px!important} 4619 .ppd-app .atl2.ops .demand{margin-left:14px!important;margin-right:14px!important} 4620 .ppd-app .atl2.ops .demand .drow{flex-wrap:wrap!important} 4621 .ppd-app .atl2.ops .demand .dfield{flex:1 1 100%!important;width:100%!important} 4622 .ppd-app .atl2.ops .demand .dacts{flex:1 1 100%!important;width:100%!important; 4623 flex-wrap:wrap!important;min-width:0!important} 4624 .ppd-app .atl2.ops .demand .dacts .evalbtn{flex:1 1 100%!important;width:100%!important} 4625 .ppd-app .atl2.ops .demand .dacts .sitepair{flex:1 1 100%!important;width:100%!important; 4626 max-width:100%!important} 4627} 4628/* Mobile scroll : URL compacte, mais Filtres + Ãvaluer + LISTE restent là . */ 4629@media (max-width:860px){ 4630 body.pp-desk .ppd-app .atl2.ops.url-stuck .dhead, 4631 body.pp-desk .ppd-app .atl2.ops.url-stuck .dunder, 4632 body.pp-desk .ppd-app .atl2.ops.url-stuck .rsp, 4633 body.pp-desk .ppd-app .atl2.ops.url-stuck .sitepair, 4634 body.pp-desk .ppd-app .atl2.ops.url-stuck .credits{display:none!important} 4635 body.pp-desk .ppd-app .atl2.ops.url-stuck .demand{ 4636 margin:0!important;border:0!important;border-radius:0!important; 4637 padding:8px 12px!important;box-shadow:none!important} 4638 body.pp-desk .ppd-app .atl2.ops.url-stuck .drow{ 4639 flex-wrap:nowrap!important;gap:8px!important} 4640 body.pp-desk .ppd-app .atl2.ops.url-stuck .dacts{flex-wrap:nowrap!important;flex:none!important;width:auto!important} 4641 body.pp-desk .ppd-app .atl2.ops.url-stuck .dacts .evalbtn{flex:none!important;width:auto!important} 4642 body.pp-desk .ppd-app .atl2.ops.url-stuck .dfield{padding:0 10px 0 14px!important} 4643 body.pp-desk .ppd-app .atl2.ops.url-stuck .dfield input{padding:8px 0!important;font-size:13px!important} 4644 body.pp-desk .ppd-app .atl2.ops.url-stuck .evalbtn{height:36px!important;padding:0 14px!important; 4645 font-size:13px!important;flex:none} 4646 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .fstrip-a, 4647 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .fsrch, 4648 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .frow2, 4649 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .lh-funnel, 4650 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .lh-dock, 4651 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .groupbar, 4652 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .ctx, 4653 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .fpuce{display:none!important} 4654 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead, 4655 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead.mapoff{ 4656 max-height:none!important;padding:8px 12px!important;overflow:visible!important; 4657 border-radius:0!important} 4658 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .lh-tools{padding:0 0 8px!important;margin:0!important;border:0!important} 4659 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .lh-top{ 4660 flex-wrap:wrap!important;gap:8px!important;padding:0!important;margin:0!important; 4661 border:0!important} 4662 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .dens{flex:none} 4663 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .doable{display:inline-flex!important;flex:none} 4664 body.pp-desk .ppd-app .atl2.ops.url-stuck .eval-stick{padding:0!important;background:#fff!important} 4665} 4666.ppd-app .atl2 .app{height:auto!important;max-height:none;overflow:visible!important; 4667display:flex;flex-direction:column} 4668.ppd-app .atl2 .fzone{flex:none!important;max-height:none} 4669@media (max-width:860px){ 4670.ppd-app{overflow:visible!important} 4671.ppd-app .atl2{height:auto!important;max-height:none!important;overflow:visible!important} 4672.ppd-app .atl2 .app{height:auto!important;overflow:visible!important;min-height:0!important; 4673justify-content:flex-start} 4674.ppd.pp-flow .ppd-appwrap{flex:none} 4675.ppd-app .atl2.ops .fzone,.ppd-app .atl2.ops .mapzone,.ppd-app .atl2.ops .stage{ 4676display:none!important;height:0!important;min-height:0!important;max-height:0!important; 4677overflow:hidden!important;flex:none!important} 4678.ppd-app .atl2.ops .readpane{min-height:0!important;height:auto!important;max-height:none!important}} 4679/* 24/08 â l'article inbound (M&A, levées, et le reste) est DÃPLIà : le 4680 cockpit ne porte que les ops nouvelles, masquer .ed-box vidait la page. 4681 Les écartés restent masqués (audit, pas l'article). */ 4682.ppd .ppart .ed-box, 4683.ppd .ppart .ed-box.ed-box-ops,
4684.ppd .ppart .ed-rest, 4685.ppd .ppart .ed-plus{display:block} 4686.ppd .ppart .ed-ecartes{display:none} 4687 4688/* Ãdito /actualites = même air que le panneau droit /cibles. */ 4689.ppd-artsec .ppd-wrap{padding:8px 32px 40px} 4690.ppd .ppart{max-width:none} 4691.ppd .ppart h3::before,.ppd .ppart h3.art-sub::before{content:none!important;display:none!important} 4692.ppd .ppart h3,.ppd .ppart h3.art-sub{display:block!important;margin:28px 0 14px!important} 4693.ppd .ppart .art-secviz,.ppd .ppart .art-viz2{display:none!important} 4694/* Les cartes M&A / levées font partie de l'édito, y compris sur les pages 4695 sectorielles. Elles étaient générées puis masquées par la règle ci-dessus. */ 4696.ppd .ppart .art-mktcard{display:block!important;width:100%;max-width:100%; 4697 margin:14px 0 20px;overflow:hidden} 4698.ppd .ppart .art-allops>ul,.ppd .ppart ul.ed-flat{columns:1!important;column-count:1!important; 4699 counter-reset:edop;list-style:none;margin:0;padding:0} 4700.ppd .ppart .art-allops>ul>li,.ppd .ppart ul.ed-flat>li{counter-increment:edop; 4701 display:grid!important;grid-template-columns:1.75em minmax(0,1fr);column-gap:10px; 4702 align-items:start;padding:18px 0!important;border-bottom:1px solid #EAF0F6; 4703 break-inside:auto} 4704.ppd .ppart .art-allops>ul>li::before,.ppd .ppart ul.ed-flat>li::before{ 4705 content:counter(edop) ".";font-size:14px;font-weight:800;color:#12A150;line-height:1.5} 4706.ppd .ppart .art-allops>ul>li>*,.ppd .ppart ul.ed-flat>li>*{grid-column:2;min-width:0} 4707.ppd .ppart .aa-d{white-space:normal;overflow:visible} 4708.ppd .ppart .ed-box{margin:28px 0 0;padding:0} 4709.ppd .ppart .ed-decrypt,.ppd .ppart .ed-decrypt-solo{margin:12px 0 0;padding:0; 4710 background:none;border:0} 4711.ppd .ppart .lead,.ppd .ppart .ed-lead{margin:0 0 22px;padding:0 0 18px 14px; 4712 border-left:2px solid #12A150} 4713.ppd .ppart p{margin:0 0 14px;font-size:15px;line-height:1.7} 4714.atl2.ops .readpane .zoom,.atl2.ops .readpane.is-edito .zoom{ 4715 padding:24px 24px 32px;box-sizing:border-box} 4716.atl2.ops .readpane .zoom-k,.atl2.ops .readpane .zoom-h, 4717.atl2.ops .readpane .zoom-meta{margin-left:0;margin-right:0} 4718 4719/* ââ ⣠l'article du jour ââ */ 4720.ppd-sec{padding:86px 0;border-top:1px solid #E3E8F0;margin-top:64px} 4721.ppd-artsec{border-top:0;margin-top:0;padding-top:12px;padding-bottom:48px} 4722/* Le sommaire et le corps de l'article sont habillés par /article.css â LA 4723 feuille partagée avec la page bakée (classes .pptoc et .ppart). Les règles 4724 qui vivaient ici ont été retirées : les garder aurait fait deux sources. */ 4725/* la journée affichée a son analyse ailleurs : une carte, pas un faux article */ 4726.ppd-artcard{display:block;border:1px solid #E3E8F0;padding:30px 32px;text-decoration:none; 4727color:#16233A;background:#F9FBFD;transition:border-color .16s,transform .16s} 4728.ppd-artcard:hover{border-color:#16233A;transform:translateY(-2px)} 4729.ppd-artcard .k{display:block;font-family:var(--pp-body);font-size:12px;color:#8FA0B8;margin-bottom:12px;font-weight:600;font-variant-numeric:tabular-nums} 4730.ppd-artcard b{display:block;font-size:clamp(21px,2.2vw,29px);font-weight:700;letter-spacing:-.036em; 4731line-height:1.16} 4732.ppd-artcard em{display:block;margin-top:14px;font-style:normal;font-size:14px;font-weight:700; 4733color:#0E8A44} 4734 4735/* ââ barre sticky newsletter (bas de /actualites et des pages secteur) ââ */ 4736.ppd.has-nldock{padding-bottom:96px} 4737.ppd-nldock{position:fixed;left:0;right:0;bottom:0;z-index:90; 4738background:#0F1D33;color:#C7D5E5;padding:10px 32px 14px;border-top:1px solid #1B2F4E; 4739box-shadow:0 -16px 36px -20px rgba(15,29,51,.55)} 4740.ppd-nldock-form{max-width:1100px;margin:0 auto} 4741.ppd-nldock-k{margin:0 0 8px;font-size:13px;font-weight:700;color:#fff;letter-spacing:-.01em} 4742.ppd-nldock-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap} 4743.ppd-nldock-row input[type=email]{flex:1 1 240px;min-width:180px;height:44px;padding:0 14px; 4744font-family:inherit;font-size:14.5px;color:#0F1D33;background:#fff;border:1px solid #24344C; 4745border-radius:10px;outline:none} 4746.ppd-nldock-row input[type=email]:focus{border-color:#12A150;box-shadow:0 0 0 3px rgba(18,161,80,.28)} 4747.ppd-nldock-row input[type=email]::placeholder{color:#7C8CA0} 4748.ppd-nlhp{position:absolute;
4748left:-9999px;height:0;width:0;border:0;padding:0} 4749.ppd-nldock .ppd-nlcta{margin:0;height:44px;padding:0 20px;border:0;border-radius:10px; 4750background:#12A150;color:#fff;font:inherit;font-size:14.5px;font-weight:700;cursor:pointer; 4751letter-spacing:-.01em} 4752.ppd-nldock .ppd-nlcta:hover{background:#0E8A44} 4753.ppd-nldock .ppd-nlcta[disabled]{opacity:.62;cursor:default} 4754.ppd-nldock .ppd-nlmsg{min-height:0;margin:8px 0 0;font-size:13px;color:#7FD8A6} 4755.ppd-nldock .ppd-nlmsg.err{color:#F5C6C8} 4756.ppd-nldock .ppd-nlall{margin:0;color:#A7B6CC;font-size:13px;text-decoration:none; 4757border-bottom:1px solid rgba(159,182,202,.34);white-space:nowrap} 4758.ppd-nldock .ppd-nlall:hover{color:#fff;border-bottom-color:#fff} 4759 4760/* overlay au-dessus de la barre sticky â l'inscription se fait DANS la barre */ 4761.ppd-nlpop{position:fixed;inset:0;z-index:120;background:rgba(15,29,51,.72); 4762display:flex;align-items:center;justify-content:center;padding:24px} 4763.ppd-nlpop-form{display:flex;flex-direction:column;gap:8px;margin-top:16px;text-align:left} 4764.ppd-nlpop-form input[type=email]{height:44px;padding:0 14px;font:inherit;font-size:14.5px; 4765color:#0F1D33;background:#fff;border:0;border-radius:10px;outline:none;width:100%;box-sizing:border-box} 4766.ppd-nlpop-form .ppd-nlcta{height:44px;border:0;border-radius:10px;background:#12A150;color:#fff; 4767font:inherit;font-size:14.5px;font-weight:700;cursor:pointer} 4768.ppd-nlpop-form .ppd-nlcta:hover{background:#0E8A44} 4769.ppd-nlpop-form .ppd-nlmsg{margin:0;font-size:13px;color:#7FD8A6} 4770.ppd-nlpop-form .ppd-nlmsg.err{color:#F5C6C8} 4771.ppd-nlpop-stack{display:flex;flex-direction:column;align-items:center;width:min(520px,100%)} 4772.ppd-nlpop-card{width:100%;background:#0F1D33;color:#fff;border-radius:18px; 4773padding:28px 26px 22px;box-shadow:0 30px 72px -24px rgba(15,29,51,.85);text-align:center} 4774.ppd-nlpop-k{margin:0 0 8px;font-size:11px;font-weight:800;letter-spacing:.08em; 4775text-transform:uppercase;color:#7FD8A6} 4776.ppd-nlpop-card h2{margin:0;font-size:22px;font-weight:800;letter-spacing:-.03em;line-height:1.25} 4777.ppd-nlpop-lead{margin:12px 0 0;font-size:14.5px;line-height:1.5;color:#C5D4E3} 4778/* languette blanche sous la carte â lisible sur le voile, plus de navy/navy */ 4779.ppd-nlpop-tab{display:inline-flex;align-items:center;justify-content:center;gap:6px; 4780margin-top:-1px;padding:9px 22px 12px;border:0;border-radius:0 0 14px 14px; 4781background:#fff;color:#0F1D33;font:inherit;font-size:13px;font-weight:700; 4782letter-spacing:-.01em;cursor:pointer; 4783box-shadow:0 12px 28px -14px rgba(15,29,51,.55)} 4784.ppd-nlpop-tab:hover{background:#F3F8F5;color:#0E7F3F} 4785 4786@media (max-width:760px){.ppd-wrap{padding:0 18px} 4787 .ppd.has-nldock{padding-bottom:128px} 4788 .ppd-nldock{padding:10px 18px 14px} 4789 .ppd-nldock-row .ppd-nlcta{flex:1 1 100%} 4790 .ppd-nlpop{inset:0} 4791} 4792@media (max-width:820px){ 4793 .ppd-sec{padding:56px 0;margin-top:40px} 4794 .ppd-artsec{padding-top:8px;padding-bottom:32px} 4795 .ppd-art{margin-top:32px} 4796 .ppd-art h2{margin-top:44px} 4797} 4798@media (prefers-reduced-motion:reduce){ 4799 .ppd *{transition:none!important;animation:none!important} 4800} 4801 4802/* 07/09 â sitepair-under, engine-stick, maxi-clip, live-film-clamp, filt-tab */ 4803@media (max-width:860px){ 4804 .ppd-app .atl2.ops .demand .drow{flex-wrap:wrap!important;min-width:0!important} 4805 .ppd-app .atl2.ops .demand .dfield{flex:1 1 100%!important;width:100%!important;min-width:0!important} 4806 .ppd-app .atl2.ops .demand .dacts{display:flex!important;flex-direction:row!important; 4807 flex-wrap:wrap!important;flex:1 1 100%!important;width:100%!important; 4808 min-width:0!important;gap:8px!important} 4809 .ppd-app .atl2.ops .demand .evalbtn, 4810 .ppd-app .atl2.ops .demand .dacts .evalbtn{flex:1 1 100%!important;width:100%!important; 4811 max-width:100%!important;box-sizing:border-box!important} 4812 .ppd-app .atl2.ops .demand .dacts .sitepair{display:flex!important;flex:1 1 100%!important; 4813 width:100%!important;max-width:100%!important;height:40px!important; 4814 box-sizing:border-box!important} 4815 .ppd-app .atl2.ops .demand .dacts .sitepair .viewbtn.sm{flex:1 1 0%!important;min-width:0!important} 4816 .ppd-app .atl2.ops .chrome-tog{display:none!important} 4817 body.pp-desk .ppd-app .atl2.ops .eval-stick{z-index:110!important} 4818 body.pp-desk .ppd-app .atl2.ops .filt-tab, 4819 body.pp-desk .ppd-app .atl2.ops .filt-dock{z-index:111!important} 4820 body.pp-desk .ppd-app .atl2.ops.url-stuck .eval-stick, 4821 body.pp-desk .ppd-app .atl2.ops .eval-stick.is-stuck{box-shadow:none!important} 4822 body.pp-desk .ppd-app .atl2.ops .listhead, 4823 body.pp-desk .ppd-app .atl2.ops .listhead.mapoff{ 4824 z-index:34!important; 4825 top:calc(var(--pp-gap,60px) + var(--pp-live-h,0px) + var(--demand-h,0px))!important} 4826 .ppd-app .atl2.ops .filt-tab{display:flex!important} 4827 .ppd-app .atl2.ops .filt-dock{display:block!important} 4828 .ppd-app .atl2.ops .listhead .lh-tools{display:none!important}
4829 body.pp-desk:has(.atl2.ops.filt-open) .ppd-nldock{display:none!important} 4830 body.pp-desk .ppd-app .atl2.ops.filt-open .dhead, 4831 body.pp-desk .ppd-app .atl2.ops.filt-open .dunder, 4832 body.pp-desk .ppd-app .atl2.ops.filt-open .rsp, 4833 body.pp-desk .ppd-app .atl2.ops.filt-open .sitepair, 4834 body.pp-desk .ppd-app .atl2.ops.filt-open .credits{display:none!important} 4835 body.pp-desk .ppd-app .atl2.ops.filt-open .demand{ 4836 margin:0!important;border:0!important;border-radius:0!important; 4837 padding:8px 12px!important} 4838 body.pp-desk .ppd-app .atl2.ops.filt-open.url-stuck .listhead .fstrip-a, 4839 body.pp-desk .ppd-app .atl2.ops.filt-open.url-stuck .listhead .fsrch, 4840 body.pp-desk .ppd-app .atl2.ops.filt-open.url-stuck .listhead .frow2{ 4841 display:flex!important} 4842 .ppd-app .atl2.ops .list.maxi, 4843 .ppd-app .atl2.ops .desk-list .list.maxi{display:grid!important; 4844 grid-template-columns:minmax(0,1fr)!important;width:100%!important; 4845 max-width:100%!important;min-width:0!important;overflow-x:clip!important; 4846 box-sizing:border-box!important} 4847 .ppd-app .atl2.ops .list.maxi .dcard, 4848 .ppd-app .atl2.ops .list.maxi .dcard.dops, 4849 .ppd-app .atl2.ops .list.maxi .grp-h{min-width:0!important;max-width:100%!important; 4850 width:100%!important;box-sizing:border-box!important} 4851 .ppd-app .atl2.ops .list.maxi .dact, 4852 .ppd-app .atl2.ops .list.maxi .dact .cell{width:100%!important;min-width:0!important} 4853 .ppd-app .atl2.ops .list.maxi .rev, 4854 .ppd-app .atl2.ops .list.maxi .memobtn, 4855 .ppd-app .atl2.ops .list.maxi .evalbtn{width:100%!important;max-width:100%!important; 4856 min-width:0!important;box-sizing:border-box!important;overflow:hidden!important; 4857 white-space:normal!important;height:auto!important;line-height:1.25!important} 4858 .ppd-app .atl2.ops .list.maxi .rev .lbl{overflow:hidden!important;white-space:normal!important; 4859 min-width:0!important} 4860 .ppd-app .atl2.ops .list:not(.maxi) .grp-h{position:sticky!important;z-index:31!important; 4861 top:calc(var(--pp-gap,48px) + var(--pp-live-h,44px) + var(--demand-h,56px) + var(--listhead-h,52px))!important; 4862 background:#fff!important} 4863} 4864body.pp-desk .ppd-app .atl2.ops .list:not(.maxi) .grp-h{ 4865 position:sticky;z-index:31; 4866 top:calc(var(--pp-gap,60px) + var(--pp-live-h,44px) + var(--demand-h,56px) + var(--listhead-h,52px)); 4867 background:#fff} 4868/* 16/09 â mobile : menus en haut, languette pour remonter. Gagne par cascade. */ 4869@media (max-width:860px){ 4870 .pp-flow .pp-band{position:static!important;top:auto!important;z-index:auto} 4871 body.pp-desk .ppd-app .atl2.ops .eval-stick, 4872 body.pp-desk .ppd-app .atl2.ops.url-stuck .eval-stick, 4873 body.pp-desk .ppd-app .atl2.ops .eval-stick.is-stuck{ 4874 position:static!important;top:auto!important;z-index:auto!important; 4875 box-shadow:none!important} 4876 body.pp-desk .ppd-app .atl2.ops .listhead, 4877 body.pp-desk .ppd-app .atl2.ops .listhead.mapoff{ 4878 position:static!important;top:auto!important;z-index:auto!important} 4879 body.pp-desk .ppd-app .atl2.ops .list:not(.maxi) .grp-h, 4880 .ppd-app .atl2.ops .list:not(.maxi) .grp-h{ 4881 position:static!important;top:auto!important;z-index:auto!important} 4882 .ppd-app .atl2.ops .filt-tab, 4883 .ppd-app .atl2.ops .filt-dock, 4884 body.pp-desk .ppd-app .atl2.ops .filt-tab, 4885 body.pp-desk .ppd-app .atl2.ops .filt-dock{display:none!important} 4886 .ppd-app .atl2.ops .listhead .lh-tools, 4887 body.pp-desk .ppd-app .atl2.ops .listhead .lh-tools{display:block!important} 4888 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .fstrip-a, 4889 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .fsrch, 4890 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .frow2, 4891 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .ctx, 4892 body.pp-desk .ppd-app .atl2.ops.url-stuck .listhead .fpuce{ 4893 display:flex!important} 4894} 4895`,ds={en:{crumb:"36 markets",home:"Home",news:"News",h1:"Get every morning the deals of the markets you follow.",leadA:"Tick your sectors, leave your email: you receive ",leadB:"one digest",leadC:" with the dayâs M&A, fundraisings and news. ",leadD:"Only on the days they move",leadE:".",fieldLabel:"Your email for the daily briefing",dockPh:"[email protected]",dockGo:"Get the daily briefing",dockSending:"â¦",dockOk:"Done â one email every morning for your markets.",dockErr:"Something went wrong â try again in a few seconds.",dockNeed:"Tick the markets to follow, just below.",dockEmail
4895:"Enter your email.",dockEmailBad:"That email is not valid.",d7:"deals",d7one:"deal",openMk:t=>`See ${t} â`,quiet:"Quiet this week â open the market for the full history.",more:t=>`+${t} more this week`,gridSubCold:"The full taxonomy. Counts are unavailable right now â every tile still opens its cockpit.",chipMa:"M&A",chipLev:"Fundraising",chipPress:"News",follow:t=>`Add ${t} to my briefing`,followLbl:"Add this sector to my briefing",followOn:"In my briefing",checkAll:"Select all",checkNone:"Clear",dockN:t=>t===1?"Daily briefing · 1 market":`Daily briefing · ${t} markets`,dockIdle:"Tick at least one market, then send.",seoT:"Get every morning the deals of the markets you follow",seoD:"Tick your sectors, leave your email: one daily digest of M&A, fundraisings and news."},fr:{crumb:"36 marchés",home:"Accueil",news:"Actualités",h1:"Recevez chaque matin les opérations des marchés que vous suivez.",leadA:"Cochez vos secteurs, laissez votre email : vous recevez ",leadB:"un seul digest",leadC:" â M&A, levées et actualités du jour. ",leadD:"Uniquement les jours où ils bougent",leadE:".",fieldLabel:"Votre email pour la veille quotidienne",dockPh:"[email protected]",dockGo:"Recevoir la veille quotidienne",dockSending:"â¦",dockOk:"Câest noté â un email agrégé chaque matin pour vos marchés.",dockErr:"Une erreur est survenue â réessayez dans quelques secondes.",dockNeed:"Cochez ci-dessous les marchés à suivre.",dockEmail:"Indiquez votre email.",dockEmailBad:"Cet email nâest pas valide.",d7:"opérations",d7one:"opération",openMk:t=>`Voir ${t} â`,quiet:"Calme cette semaine â ouvrez le marché pour tout lâhistorique.",more:t=>`+${t} cette semaine`,gridSubCold:"La taxonomie complète. Les compteurs ne sont pas disponibles pour lâinstant â chaque brique ouvre quand même son cockpit.",chipMa:"M&A",chipLev:"Levées",chipPress:"Presse",follow:t=>`Ajouter ${t} à ma veille`,followLbl:"Ajouter ce secteur à ma veille",followOn:"Dans ma veille",checkAll:"Tout cocher",checkNone:"Tout décocher",dockN:t=>t===1?"Veille du matin · 1 marché":`Veille du matin · ${t} marchés`,dockIdle:"Cochez au moins un marché, puis envoyez.",seoT:"Recevez chaque matin les opérations des marchés que vous suivez",seoD:"Cochez vos secteurs, laissez votre email : un digest quotidien des M&A, levées et actualités."}},n6=7,Cm=3,E1="pp-follow-sectors";function r6(t){var o;const n=`${t.headline_fr||""} ${t.headline||""} ${t.title||""}`;if(/\b(?:sells?|sold|sale of|divests?|disposed of)\b.{0,80}\b(?:stake|share|shares|interest|asset|assets|business|pipeline|unit)\b/i.test(n))return"ma";const i=(t.rubrique||"").toLowerCase();if(i==="ma")return"ma";if(i==="levees")return"levee";if(i==="nominations"||i==="recrutements"||i==="actualites")return"other";const s=(((o=t.card)==null?void 0:o.kind)||"").toLowerCase();if(s==="rachat"||s==="en_cours"||s==="ma")return"ma";if(s==="levee_une"||s==="levee")return"levee";const a=String(t.item_kind||t.deal_type||"").toLowerCase();return a==="ma"||a.startsWith("acq")||a.includes("fusion")?"ma":a==="vcpe"||a.includes("lev")||a.includes("fund")?"levee":"other"}function i6(t,n,r){const i=new Map,s=(t==null?void 0:t.recent_ops)||[],a=((t==null?void 0:t.date)||"").slice(0,10),o=Date.parse(a),c=isFinite(o)?new Date(o-(n6-1)*864e5).toISOString().slice(0,10):"";let l=0;for(const d of s){const p=(d._pool_date||d.published||"").slice(0,10);if(!p||c&&p<c||a&&p>a)continue;l+=1;const u=((d.product_category_above||"")+"|"+(d.market_tags||[]).join("|")).toLowerCase(),g=(d.company_name||d.title||"").trim();if(!g)continue;const f=(d.country||"").trim(),L=Kt(f&&f!=="?"?f:"Europe")||Kt(f)||"",v={name:g,acquirer:(d.acquirer_name||"").trim(),headline:(r==="fr"?d.headline_fr:d.headline)||d.headline||d.title||"",amount:Number(d.amount_eur)||0,date:p,cc:L,country:f&&f!=="?"?f:"Europe",kind:r6(d)};for(const y of n){if(!u.includes(y.toLowerCase()))continue;const h=i.get(y)||{n:0,amountEur:0,nMa:0,nLev:0,nOther:0,ops:[]};h.n+=1,h.amountEur+=v.amount,v.kind==="ma"?h.nMa+=1:v.kind==="levee"?h.nLev+=1:h.nOther+=1,h.ops.push(v),i.set(y,h)}}for(const d of i.values())d.ops.sort((p,u)=>u.date.localeCompare(p.date)||u.amount-p.amount);return{by:i,total:l,from:c,to:a}}function s6(){try{const t=JSON.parse(localStorage.getItem(E1)||"[]");return Array.isArray(t)?t.filter(n=>typeof n=="string"):[]}catch{return[]}}function a6({cc:t,label:n}){const r=s1(t);return r?e.jsx("img",{className:"mkc-flag",src:r,width:18,height:13,alt:"",title:n}):e.jsx("span",{className:"mkc-flag em",title:n,children:"ð"})}function o6({sector:t}){const n=m.useRef(null),[r,i]=m.useState(!1);return m.useEffect(()=>{const s=n.current;if(!s||r)return;if(typeof IntersectionObserver>"u"){i(!0);return}const a=new IntersectionObserver(o=>{o.some(c=>c.isIntersecting)&&(i(!0),a.disconnect())},{rootMargin:"280px 0px",threshold:.01});return a.observe(s),requestAnimationFrame(()=>{const o=s.getBoundingClientRect();o.top<window.innerHeight+280&&o.bottom>-40&&i(!0)}),()=>a.disconnect()},[r,t]),e.jsx("div",{ref:n,className:"mkc-live","data-sector":t,children:r?e.jsx(Dp,{scope:{sector:t},scopeLabel:t,compact:!0}):e.jsx("div",{className:"mkc-live-ph","aria-hidden":"true",children:e.jsx("span",{className:"mkc-live-ph-lbl",children:"LIVE"})})})}function l6({variant:t,email:n,onEmail:r,selected:i,labels:s,t:a,onNeedPick:o}){const c=Ge(),[l,d]=m.useState(""),[p,u]=m.useState("idle"),[g,f]=m.useState(""),L=m.useRef(null);m.useEffect(()=>{c!=null&&c.email&&r(c.email)},[c==null?void 0:c.email]);const v=async()=>{var b,x;if(p==="sending")return;if(!i.length){f(a.dockNeed),u("err"),o();return}const h=n.trim();
4895if(!h){f(a.dockEmail),u("err"),(b=L.current)==null||b.focus();return}if(!/^[^@\s]+@[^@\s]+\.[^@\s]{2,}$/.test(h)){f(a.dockEmailBad),u("err"),(x=L.current)==null||x.focus();return}u("sending"),f("");try{const A=await fetch(`${_e}/mes-secteurs/subscribe`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:h.toLowerCase(),sectors:s,countries:[],source:"marches-hub",website:l})}),w=await A.json().catch(()=>null);if(A.ok&&w&&w.ok===!0){u("ok");return}f(w&&w.error||a.dockErr),u("err")}catch{f(a.dockErr),u("err")}},y=i.length;return e.jsxs("form",{className:"mail "+t,noValidate:!0,onSubmit:h=>{h.preventDefault(),v()},children:[t==="hero"&&e.jsx("div",{className:"fieldlbl",children:a.fieldLabel}),t==="dock"&&e.jsx("p",{className:"dock-k",children:y?a.dockN(y):a.dockIdle}),e.jsxs("div",{className:"mail-row",children:[e.jsx("span",{className:"uf",children:e.jsx("input",{ref:L,type:"email",required:!0,value:n,placeholder:a.dockPh,autoComplete:"email",inputMode:"email","aria-label":a.dockPh,onChange:h=>{r(h.target.value),p!=="idle"&&u("idle")}})}),e.jsx("input",{type:"text",name:"website",value:l,tabIndex:-1,autoComplete:"off","aria-hidden":"true",className:"mkc-nlhp",onChange:h=>d(h.target.value)}),e.jsx("button",{type:"submit",className:"ub",disabled:p==="sending",children:p==="sending"?a.dockSending:a.dockGo})]}),p!=="idle"&&p!=="sending"&&e.jsx("p",{className:"mail-msg"+(p==="err"?" err":""),"aria-live":"polite",children:p==="ok"?a.dockOk:g})]})}function c6(){const{lang:t,localizePath:n}=ae(),r=ds[t],[i,s]=m.useState(null),[a,o]=m.useState(()=>typeof window>"u"?[]:s6()),[c,l]=m.useState(()=>{var k;return((k=Ge())==null?void 0:k.email)||""}),[d,p]=m.useState(!1),[u,g]=m.useState(!0),f=m.useRef(null);ht({en:{title:`${ds.en.seoT} | Proplace`,description:ds.en.seoD},fr:{title:`${ds.fr.seoT} | Proplace`,description:ds.fr.seoD}}),m.useEffect(()=>{let k=!0;return gr().then(_=>{k&&s(i6(_,nr.map(N=>N.label),t))}),()=>{k=!1}},[t]),m.useEffect(()=>{try{localStorage.setItem(E1,JSON.stringify(a))}catch{}},[a]),m.useEffect(()=>{const k=f.current;if(!k||typeof IntersectionObserver>"u")return;const _=new IntersectionObserver(([N])=>g(N.isIntersecting),{threshold:.15});return _.observe(k),()=>_.disconnect()},[]);const L=!!i&&i.total>0,v=m.useMemo(()=>new Set(a),[a]),y=nr.map((k,_)=>{const N=i==null?void 0:i.by.get(k.label),I=(N==null?void 0:N.ops)||[];return{name:k.label,label:t==="en"?k.label:k.labelFr,slug:k.id,n7:(N==null?void 0:N.n)||0,nMa:(N==null?void 0:N.nMa)||0,nLev:(N==null?void 0:N.nLev)||0,nOther:(N==null?void 0:N.nOther)||0,amount:N&&N.amountEur>0?Br(N.amountEur,t):"",preview:I.slice(0,Cm),extra:Math.max(0,I.length-Cm),i:_}}).sort((k,_)=>k.label.localeCompare(_.label,t,{sensitivity:"base"})||k.i-_.i),h=k=>`/actualites/operations/secteur/${k}/`,b=k=>{p(!1),o(_=>_.includes(k)?_.filter(N=>N!==k):[..._,k])},x=k=>{p(!1),o(_=>_.includes(k)?_:[..._,k])},A=nr.map(k=>k.id),w=a.length===A.length,S=nr.filter(k=>v.has(k.id)).map(k=>k.label),E=()=>{var k;p(!0),(k=document.getElementById("pp-mk-grid"))==null||k.scrollIntoView({behavior:"smooth",block:"start"})},j=k=>e.jsx(l6,{variant:k,email:c,onEmail:l,selected:a,labels:S,t:r,onNeedPick:E}),O=!u&&a.length>0;return e.jsxs("div",{className:"pp-marches"+(O?" has-dock":""),children:[e.jsx("style",{children:d6}),e.jsx(Di,{active:"marches"}),e.jsx("section",{className:"hero",children:e.jsxs("div",{className:"pp-mk-wrap",children:[e.jsxs("nav",{className:"ppcrumb","aria-label":"Fil dâAriane",children:[e.jsx("a",{href:`${n("/")}`,children:r.home}),e.jsx("span",{"aria-hidden":"true",children:"âº"}),e.jsx("a",{href:`${n("/actualites")}/`,children:r.news}),e.jsx("span",{"aria-hidden":"true",children:"âº"}),e.jsx("b",{children:r.crumb})]}),e.jsx("h1",{children:r.h1}),e.jsxs("p",{className:"lead",children:[r.leadA,e.jsx("b",{children:r.leadB}),r.leadC,e.jsx("b",{children:r.leadD}),r.leadE]}),e.jsx("div",{ref:f,className:"hero-field",children:j("hero")})]})}),e.jsx("section",{className:"sec",id:"pp-mk-grid",children:e.jsxs("div",{className:"pp-mk-wrap",children:[e.jsxs("div",{className:"sec-tools",children:[!L&&e.jsx("p",{className:"sub2",children:r.gridSubCold}),e.jsx("button",{type:"button",className:"ghost",onClick:()=>{p(!1),o(w?[]:A)},children:w?r.checkNone:r.checkAll})]}),e.jsx("div",{className:"mk"+(d?" need":""),children:y.map(k=>{const _=h(k.slug),N=v.has(k.slug),I=k.n7>1?r.d7:r.d7one,ce=[k.preview[0]||null,k.preview[1]||null,k.preview[2]||null];return e.jsxs("article",{className:"mkc"+(N?" on":""),onClick:K=>{const pe=K.target;pe!=null&&pe.closest("a, button, input, label")||x(k.slug)},children:[N&&e.jsx("span",{className:"mkc-onflag",children:r.followOn}),e.jsx(o6,{sector:k.name}),e.jsxs("header",{className:"mkc-head",children:[e.jsxs("div",{className:"mkc-title",children:[e.jsx("h2",{className:"mkc-name",children:k.label}),e.jsxs("label",{className:"mkc-chk",children:[e.jsx("input",{type:"checkbox",checked:N,"aria-label":r.follow(k.label),onChange:()=>b(k.slug)}),e.jsx("span",{className:"mkc-chklbl",children:N?r.followOn:r.followLbl})]})]}),e.jsxs("p",{className:"mkc-facts",children:[e.jsx("b",{children:k.n7}),e.jsx("span",{className:"mkc-word",children:I}),k.nMa>0&&e.jsxs("span",{className:"chip",children:[k.nMa," ",r.chipMa]}),k.nLev>0&&e.jsxs("span",{className:"chip",children:[k.nLev," ",r.chipLev]}),k.nOther>0&&e.jsxs("span",{className:"chip",children:[k.nOther," ",r.chipPress]}),k.amount?e.jsx("span",{className:"chip",children:k.amount}):null]})]}),k.preview.length?e.jsx("ul",{className:"mkc-list",children:ce.map((K,pe)=>K?e.jsxs("li",{className:"mkc-row",children:[e.jsx(a6,{cc:K.cc,label:K.country}),e.jsxs("span",{className:"nd",children:[e.jsxs("span",{className:"rnm",children:[K.name,K.acquirer?e.jsxs("em",{children:[" â ",K.acquirer]}):null]}),e.jsx("span",{className:"rds",children:K.headline&&K.headline!==K.name?K.headline:""})]}),e.jsxs("span",{className:"meta",children:[e.jsx("span",{className:"kind "+K.kind,children:K.kind==="ma"?r.chipMa:K.kind==="levee"?r.chipLev:r.chipPress}),e.jsx("span",{className:"amt"+(K.amount?"":" none"),children:K.amount?Br(K.amount,t):"â"})]})]},K.name+K.date+pe):e.jsx("li",{className:"mkc-row empty","aria-hidden":"true"},"empty-"+pe))}):e.jsx("div",{className:"mkc-list quiet",children:e.jsx("p",{className:"mkc-quiet",children:r.quiet})}),e.jsx("p",{className:"mkc-more",children:k.extra>0?r.more(k.extra):" "}),e.jsx("a",{className:"mkc-cta",href:_,children:r.openMk(k.label)})]},k.slug)})})]})}),O&&e.jsx("div",{className:"dock-wrap",role:"region","aria-label":r.fieldLabel,children:j("dock")}),e.jsx(Nt,{})]})}const d6=` 4896.pp-marches{font-family:var(--pp-body); 4897color:#16233A;background:#fff} 4898.pp-marches.has-dock{padding-bottom:92px} 4899.pp-marches .pp-mk-wrap{max-width:1200px;margin:0 auto;padding:0 32px} 4900.pp-marches,.pp-marches *{box-sizing:border-box} 4901 4902.pp-marches .ppcrumb{display:flex;align-items:center;justify-content:center;gap:10px;flex-wrap:wrap; 4903font-family:var(--pp-body);font-size:12px;color:#8FA0B8;margin:0 0 28px;font-weight:600;font-variant-numeric:tabular-nums} 4904.pp-marches .ppcrumb a{color:#8FA0B8;text-decoration:none;border-bottom:1px solid #E3E8F0} 4905.pp-marches .ppcrumb a:hover{color:#16233A;border-bottom-color:#16233A} 4906.pp-marches .ppcrumb b{color:#16233A;font-weight:500} 4907 4908/* ââ hero façon home ââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 4909.pp-marches .hero{padding:56px 0 36px;text-align:center} 4910.pp-marches h1{margin:0 auto;max-width:18em;font-size:clamp(32px,4.8vw,54px);font-weight:700; 4911letter-spacing:-.042em;line-height:1.06;text-wrap:balance} 4912.pp-marches .lead{margin:26px auto 0;max-width:62ch;font-size:clamp(16.5px,1.35vw,19px); 4913line-height:1.66;color:#4B5E78} 4914.pp-marches .lead b{color:#16233A;font-weight:600} 4915 4916.pp-marches .hero-field{margin:42px auto 0;max-width:600px;text-align:left} 4917.pp-marches .fieldlbl{margin:0 0 13px;font-family:var(--pp-body); 4918font-size:12px;color:#8FA0B8;font-weight:600;font-variant-numeric:tabular-nums} 4919.pp-marches .mail-row{display:flex;gap:10px;align-items:stretch;flex-wrap:wrap} 4920.pp-marches .uf{display:flex;align-items:center;flex:1 1 240px;min-width:0;height:56px; 4921padding:0 18px;border:1px solid rgba(15,29,51,.11);border-radius:14px;background:#fff; 4922box-shadow:0 1px 2px rgba(15,29,51,.04)} 4923.pp-marches .uf:focus-within{border-color:rgba(15,29,51,.30);box-shadow:0 0 0 4px rgba(15,29,51,.05)} 4924.pp-marches .uf input{flex:1;min-width:0;border:0;outline:none;background:none; 4925font:inherit;font-size:16.5px;color:#16233A;letter-spacing:-.01em} 4926.pp-marches .uf input::placeholder{color:#8FA0B8} 4927.pp-marches .ub{flex:none;height:56px;padding:0 26px;border:0;border-radius:14px; 4928background:#12A150;color:#fff;font:inherit;font-size:15.5px;font-weight:700;cursor:pointer; 4929white-space:nowrap;letter-spacing:-.01em; 4930box-shadow:0 2px 4px rgba(18,161,80,.20),0 14px 28px -16px rgba(18,161,80,.75)} 4931.pp-marches .ub:hover{background:#0E8A44} 4932.pp-marches .ub[disabled]{opacity:.6;cursor:default} 4933.pp-marches .mail-msg{margin:10px 0 0;font-size:14px;color:#0E8A44} 4934.pp-marches .mail-msg.err{color:#C0353A} 4935 4936.pp-marches .sec{padding:8px 0 56px} 4937.pp-marches .sec-tools{display:flex;align-items:center;justify-content:space-between; 4938gap:16px;margin:0 0 16px} 4939.pp-marches .sub2{font-size:15px;color:#4B5E78;margin:0;line-height:1.6;max-width:80ch} 4940.pp-marches .ghost{flex:none;margin-left:auto;border:1px solid #E3E8F0;background:#fff; 4941font:inherit;font-family:var(--pp-body);font-size:12px;color:#4B5E78;padding:8px 12px;cursor:pointer;font-weight:600;font-variant-numeric:tabular-nums} 4942.pp-marches .ghost:hover{border-color:#16233A;color:#16233A} 4943 4944/* ââ mini-cockpits âââââââââââââââââââââââââââââââââââââââââââââââââââââââ
4945 2 colonnes, même gabarit : LIVE collé en haut (44px, jamais 2 lignes), 4946 puis titre + case, puis 3 lignes de deals de hauteur fixe. Dans une 4947 rangée, tous les bandeaux LIVE tombent donc sur la même ligne. */ 4948.pp-marches .mk{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px; 4949align-items:stretch} 4950.pp-marches .mk.need .mkc-chk{animation:mkc-pulse 1.1s ease-in-out 3} 4951@keyframes mkc-pulse{0%,100%{box-shadow:none}50%{box-shadow:0 0 0 4px rgba(18,161,80,.28)}} 4952.pp-marches .mkc{position:relative;border:1px solid #E3E8F0;background:#fff;display:flex; 4953flex-direction:column;cursor:pointer;overflow:hidden;border-radius:12px;min-width:0; 4954transition:border-color .16s ease,transform .16s ease,box-shadow .16s ease,background .16s ease} 4955.pp-marches .mkc:hover{border-color:#16233A;transform:translateY(-2px)} 4956.pp-marches .mkc.on{border:2px solid #12A150;background:#E7F6EE; 4957box-shadow:0 0 0 4px rgba(18,161,80,.22),0 18px 36px -14px rgba(18,161,80,.55)} 4958.pp-marches .mkc-onflag{position:absolute;top:8px;right:10px;z-index:2; 4959font-family:var(--pp-body);font-size:12px;font-weight:600;color:#fff;background:#12A150; 4960padding:4px 8px;border-radius:4px;pointer-events:none;font-variant-numeric:tabular-nums} 4961 4962.pp-marches .mkc-live{margin:0;flex:none;height:44px;overflow:hidden;background:#0F1D33} 4963.pp-marches .mkc-live .pp-livewrap{max-width:none!important;margin:0!important;padding:0!important} 4964.pp-marches .mkc-live .pp-live, 4965.pp-marches .mkc-live .pp-live .pp-run, 4966.pp-marches .mkc-live .pp-live .pp-tk, 4967.pp-marches .mkc-live .pp-live .pp-win{height:44px!important} 4968.pp-marches .mkc-live .pp-tk{white-space:nowrap} 4969.pp-marches .mkc-live-ph{height:44px;background:#0F1D33;display:flex;align-items:center;padding:0 12px} 4970.pp-marches .mkc-live-ph-lbl{font-family:var(--pp-body); 4971font-size:12px;font-weight:600;color:#fff;background:#E5484D;padding:4px 10px;font-variant-numeric:tabular-nums} 4972 4973.pp-marches .mkc-head{padding:14px 16px 12px;border-bottom:1px solid #F5F7FA;flex:none} 4974.pp-marches .mkc-title{display:flex;align-items:flex-start;justify-content:space-between; 4975gap:12px} 4976.pp-marches .mkc-name{margin:0;flex:1;min-width:0;font-size:22px;font-weight:700; 4977letter-spacing:-.03em;line-height:1.2;color:#16233A; 4978display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden; 4979min-height:2.4em} 4980.pp-marches .mkc-chk{display:inline-flex;align-items:center;gap:8px;cursor:pointer;flex:none; 4981max-width:18em;padding:6px 10px 6px 6px;border:1px solid #E3E8F0;background:#F9FBFD;border-radius:8px} 4982.pp-marches .mkc:hover .mkc-chk{border-color:#12A150;background:#E7F6EE} 4983.pp-marches .mkc.on .mkc-chk{border-color:#0E8A44;background:#12A150} 4984.pp-marches .mkc.on .mkc-chklbl{color:#fff} 4985.pp-marches .mkc-chk input{width:18px;height:18px;margin:0;accent-color:#12A150;cursor:pointer;flex:none} 4986.pp-marches .mkc-chklbl{font-size:12.5px;font-weight:650;color:#16233A;letter-spacing:-.01em; 4987line-height:1.25} 4988 4989.pp-marches .mkc-facts{display:flex;align-items:center;flex-wrap:wrap;gap:8px; 4990margin:10px 0 0;min-height:28px;font-size:14px;line-height:1.2;color:#0F1D33} 4991.pp-marches .mkc-facts b{font-size:22px;font-weight:700;letter-spacing:-.04em;line-height:1; 4992font-variant-numeric:tabular-nums;color:#16233A} 4993.pp-marches .mkc-facts .mkc-word{font-weight:650;color:#16233A} 4994.pp-marches .mkc-facts .chip{font-variant-numeric:tabular-nums;font-size:12.5px; 4995padding:3px 8px;border:1px solid #E3E8F0;border-radius:999px;color:#0F1D33;background:#F9FBFD} 4996 4997.pp-marches .mkc-list{list-style:none;margin:0;padding:0;flex:none;height:168px} 4998.pp-marches .mkc-list.quiet{display:flex;align-items:center} 4999.pp-marches .mkc-row{display:grid;grid-template-columns:20px minmax(0,1fr) auto; 5000gap:10px;align-items:center;height:56px;padding:0 16px;border-bottom:1px solid #F5F7FA} 5001.pp-marches .mkc-row.empty{border-bottom-color:transparent} 5002.pp-marches .mkc-flag{display:block;width:18px;height:13px;object-fit:cover} 5003.pp-marches .mkc-flag.em{font-size:13px;line-height:13px} 5004.pp-marches .nd{min-width:0} 5005.pp-marches .rnm{display:block;font-size:15px;font-weight:650;letter-spacing:-.015em; 5006color:#16233A;white-space:nowrap;overflow:hidden;text-overflow:ellipsis} 5007.pp-marches .rnm em{font-style:normal;font-weight:500;color:#0E8A44} 5008.pp-marches .rds{display:block;font-size:13px;line-height:1.35;color:#4B5E78; 5009white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-top:1px} 5010.pp-marches .meta{display:flex;flex-direction:column;align-items:flex-end;
5010gap:3px;flex:none} 5011.pp-marches .kind{font-family:var(--pp-body);font-size:12px;color:#0F1D33;border:1px solid #E3E8F0;padding:3px 6px;font-weight:600;font-variant-numeric:tabular-nums} 5012.pp-marches .kind.ma{color:#16233A;border-color:#16233A} 5013.pp-marches .kind.levee{color:#0E8A44;border-color:#12A150} 5014.pp-marches .amt{font-size:14px;font-weight:650;font-variant-numeric:tabular-nums;color:#16233A} 5015.pp-marches .amt.none{color:#8FA0B8;font-weight:400} 5016 5017.pp-marches .mkc-quiet{margin:0 16px;font-size:14px;line-height:1.45;color:#4B5E78} 5018.pp-marches .mkc-more{margin:0;padding:8px 16px 0;font-size:13px;color:#4B5E78;min-height:28px} 5019.pp-marches .mkc-cta{display:block;margin-top:auto;padding:14px 16px;text-decoration:none; 5020font-size:15px;font-weight:700;letter-spacing:-.015em;color:#0E8A44;border-top:1px solid #F5F7FA; 5021background:#F9FBFD} 5022.pp-marches .mkc:hover .mkc-cta,.pp-marches .mkc-cta:hover{background:#E7F6EE;color:#064e2b} 5023.pp-marches .mkc.on .mkc-cta{background:#12A150;color:#fff;border-top-color:#0E8A44} 5024.pp-marches .mkc.on .mkc-cta:hover,.pp-marches .mkc.on:hover .mkc-cta{background:#0E8A44;color:#fff} 5025.pp-marches .mkc.on .mkc-head{background:#E7F6EE;border-bottom-color:#BBF7D0} 5026.pp-marches .mkc.on .mkc-name{color:#064E2B} 5027 5028.pp-marches .mkc-nlhp{position:absolute;left:-9999px;height:0;width:0;border:0;padding:0} 5029 5030.pp-marches .dock-wrap{position:fixed;left:0;right:0;bottom:0;z-index:60;background:#0F1D33; 5031color:#C7D5E5;padding:12px 32px 16px;border-top:1px solid #1B2F4E} 5032.pp-marches .mail.dock{max-width:1200px;margin:0 auto} 5033.pp-marches .dock-k{margin:0 0 8px;font-family:var(--pp-body); 5034font-size:12px;font-weight:600;font-variant-numeric:tabular-nums} 5035.pp-marches .mail.dock .uf{background:transparent;border-radius:0;height:44px;box-shadow:none} 5036.pp-marches .mail.dock .ub{border-radius:var(--pp-r-pill,999px);height:44px} 5037.pp-marches .mail.dock .mail-msg{color:#7FD8A6} 5038.pp-marches .mail.dock .mail-msg.err{color:#F5C6C8} 5039 5040@media(max-width:900px){ 5041 .pp-marches .mk{grid-template-columns:1fr} 5042} 5043@media(max-width:760px){ 5044 .pp-marches.has-dock{padding-bottom:128px} 5045 .pp-marches .pp-mk-wrap{padding:0 18px} 5046 .pp-marches .hero{padding:32px 0 20px} 5047 .pp-marches .mkc-title{flex-direction:column;align-items:stretch} 5048 .pp-marches .mkc-chk{max-width:none} 5049 .pp-marches .dock-wrap{padding:12px 18px 16px} 5050 .pp-marches .mail-row{flex-wrap:wrap} 5051 .pp-marches .mail.dock .ub,.pp-marches .hero .ub{flex:1 1 100%} 5052} 5053 5054/* âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ 5055 RESTYLE v3 â géométrie de la maquette Veille.html. Les couleurs viennent 5056 déjà des jetons ; ce bloc pose les formes. 5057 âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ */ 5058 5059/* Le champ email du hero : la même pilule que l'accueil, point vert compris. 5060 Une seule promesse, un seul geste : les deux pages doivent le dessiner 5061 pareil, sinon la seconde a l'air d'une copie approximative. */ 5062.pp-marches .mail-row{gap:0;background:#fff;border:1px solid var(--pp-line); 5063 border-radius:var(--pp-r-pill);padding:6px 6px 6px 20px;align-items:center; 5064 flex-wrap:nowrap;box-shadow:var(--pp-sh-float); 5065 transition:border-color .18s,box-shadow .18s} 5066.pp-marches .mail-row:hover,.pp-marches .mail-row:focus-within{ 5067 border-color:var(--pp-green-soft);box-shadow:0 16px 40px rgba(18,161,80,.16)} 5068.pp-marches .mail-row::before{content:"";width:8px;height:8px;border-radius:50%; 5069 background:var(--pp-green);flex:none;margin-right:11px} 5070.pp-marches .mail-row .uf{border:0;box-shadow:none;background:transparent; 5071 height:auto;padding:0;border-radius:0} 5072.pp-marches .mail-row .ub,.pp-marches .mail.dock .ub{height:44px;padding:0 22px;flex:none; 5073 border-radius:var(--pp-r-pill,999px);box-shadow:var(--pp-sh-cta);cursor:pointer} 5074@media (max-width:560px){ 5075 .pp-marches .mail-row{flex-wrap:wrap;border-radius:var(--pp-r-l);padding:12px 14px;gap:10px} 5076 .pp-marches .mail-row .ub{width:100%} 5077} 5078 5079/* Cartes marché : rayon de carte de contenu, ombre douce, survol qui éclaire 5080 au lieu de soulever â la page en aligne trente-six, un soulèvement de 2px 5081 sur chacune faisait vibrer la grille. */ 5082.pp-marches .mkc{border-radius:var(--pp-r-l);box-shadow:var(--pp-sh-card)} 5083.pp-marches .mkc:hover{border-color:var(--pp-line-strong);transform:none; 5084 background:var(--pp-bg-hover)} 5085.pp-marches .mkc.on{border:1px solid var(--pp-green-bd);background:#fff; 5086 box-shadow:0 0 0 2px rgba(18,161,80,.16),var(--pp-sh-card)} 5087.pp-marches .mkc-onflag{border-radius:var(--pp-r-pill);padding:3px 10px;font-size:11px} 5088
5089/* Le bandeau LIVE de la carte se termine en fondu : jamais un mot coupé net. */ 5090.pp-marches .mkc-live{-webkit-mask-image:linear-gradient(to right,#000 88%,transparent); 5091 mask-image:linear-gradient(to right,#000 88%,transparent)} 5092 5093/* La case « Dans ma veille » est une CHIP : même hauteur que partout ailleurs. */ 5094.pp-marches .mkc-chk{height:28px;box-sizing:border-box;border-radius:var(--pp-r-pill); 5095 padding:0 12px;font-size:12px;font-weight:600;white-space:nowrap} 5096.pp-marches .mkc-chk input{width:14px;height:14px} 5097.pp-marches .mkc-name{font-size:20px} 5098 5099/* Le bouton « Tout cocher » : un secondaire, pas une étiquette qui crie. */ 5100.pp-marches .ghost{height:28px;box-sizing:border-box;display:inline-flex; 5101 align-items:center;border-radius:var(--pp-r-pill);padding:0 14px; 5102 font-size:12px;font-weight:600;color:var(--pp-ink-3);white-space:nowrap} 5103.pp-marches .ghost:hover{border-color:var(--pp-line-strong);color:var(--pp-ink)} 5104 5105/* Fil d'Ariane : casse normale, comme partout depuis le restyle. */ 5106.pp-marches .ppcrumb{font-size:12px;font-weight:600;color:var(--pp-ink-4)} 5107`,p6={en:{title:"We find the companies you should track, fund or acquire.",body:"Stan is your AI Corporate Developer. Enter your site: he derives your criteria and delivers your first ten targets. You validate them live with a human Corporate Developer, who learns to reason like you and tunes Stan into your decisive competitive edge.",placeholder:"yoursite.com",cta:"Discover my targets"},fr:{title:"Nous trouvons les entreprises que vous devriez suivre, financer ou racheter.",body:"Stan est votre AI Corporate Developer. Indiquez votre site : il en déduit vos critères et vous rend vos dix premières cibles. Vous les validez de vive voix avec un Corporate Developer humain, qui apprend à raisonner comme vous et paramètre Stan pour en faire votre avantage concurrentiel décisif.",placeholder:"votresite.com",cta:"Découvrir mes cibles"}};function u6({title:t,note:n}){const{lang:r}=ae(),i=p6[r];return e.jsxs("div",{className:"pp-ask",children:[e.jsx("style",{children:h6}),e.jsx("h2",{children:t||i.title}),n?e.jsx("p",{className:"pp-ask-body",children:n}):e.jsx("p",{className:"pp-ask-body",children:i.body}),e.jsx(ta,{placeholder:i.placeholder,cta:i.cta})]})}const h6=` 5108.pp-ask{padding:56px 24px;border-top:1px solid #E3E8F0;text-align:center;background:#F9FBFD; 5109font-family:var(--pp-body);color:#0F1D33} 5110.pp-ask h2{margin:0 auto 16px;font-size:clamp(21px,2.4vw,30px);font-weight:600; 5111letter-spacing:-.035em;line-height:1.14;max-width:34ch} 5112.pp-ask-body{font-size:15px;color:#4B5E78;margin:0 auto 22px;max-width:62ch;line-height:1.65} 5113.pp-ask .ur{display:flex;align-items:center;gap:0;max-width:600px;margin:0 auto; 5114background:#fff;border:1px solid var(--pp-line);border-radius:var(--pp-r-pill); 5115padding:6px 6px 6px 20px;box-shadow:var(--pp-sh-float); 5116transition:border-color .18s,box-shadow .18s} 5117.pp-ask .ur:hover,.pp-ask .ur:focus-within{border-color:var(--pp-green-soft); 5118box-shadow:0 16px 40px rgba(18,161,80,.16)} 5119.pp-ask .ur::before{content:"";width:8px;height:8px;border-radius:50%; 5120background:var(--pp-green);flex:none;margin-right:11px} 5121.pp-ask .uf{display:flex;align-items:center;gap:9px;flex:1;height:auto;padding:0; 5122background:transparent;border:0;border-radius:0;font-size:15px} 5123.pp-ask .uf input{flex:1;border:0;outline:none;font-size:15px;background:none; 5124font-family:inherit;min-width:0} 5125.pp-ask .uf input.shake{animation:pp-ask-shk .42s} 5126@keyframes pp-ask-shk{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}} 5127.pp-ask .ur:has(.uf-err){border-color:#E5484D;box-shadow:0 0 0 4px rgba(229,72,77,.12)} 5128.pp-ask .uf-err-msg{margin:10px auto 0;font-size:13px;color:#E5484D;font-weight:500;max-width:600px} 5129.pp-ask .ub{flex:none;height:44px;padding:0 22px;border:0;border-radius:var(--pp-r-pill);background:#12A150;box-shadow:var(--pp-sh-cta); 5130color:#fff;font-size:14.5px;font-weight:600;cursor:pointer;white-space:nowrap;font-family:inherit} 5131.pp-ask .ub:hover{background:#0E8A44} 5132.pp-ask .usug{display:flex;gap:6px;margin-top:9px;flex-wrap:wrap;justify-content:center} 5133.pp-ask .usg{border:1px solid #E3E8F0;background:#fff;border-radius:99px;padding:5px 12px; 5134font-size:12.5px;color:#4B5E78;cursor:pointer;font-family:inherit} 5135.pp-ask .usg:hover{border-color:#0F1D33;color:#0F1D33} 5136.pp-ask p{font-size:13.5px;color:#4B5E78;margin:15px auto 0;max-width:82ch;line-height:1.6} 5137.pp-ask p b{color:#0F1D33;font-weight:600} 5138.pp-ask .ok2{color:#0E8A44}.pp-ask .no2{color:#E5484D} 5139`,ps={en:{eyebrow:"RESEARCH · THE OTHER WAY IN",h1:"Give an article. Stan turns it into a thesis â and into the companies that carry it.",leadA:"The same gesture as on the home page, through another door. ",leadB:"There you give your website and Stan derives your criteria; here you give an article and Stan derives an investment thesis.",leadC:" A thesis that does not end in an i
5139dea â it ends in a list of companies to evaluate.",fieldPh:"paste the URL of an article, a video or a note",fieldCta:"Request this thesis â",fieldNote:"Leave the link and your details: Stan builds the mind map, the angles and the companies to evaluate, then we send it over. Nothing is generated on the spot â this is a request, not a button.",thesesTitle:"The theses already produced",thesesSub:"Each one ends in companies â that is what separates it from a blog post.",unreachable:"The research directory is unreachable right now. Try again in a moment.",none:"No thesis published yet.",loading:"Loading thesesâ¦",more:"Show more",mindmap:"MIND MAP",open:"Open in the workshop â",archive:"Previous version of this page â",askTitle:"A thesis ends in companies. What about yours?",seoT:"Research â from an article to a thesis, and the companies behind it",seoD:"Give us an article: Stan turns it into an investment thesis, its angles, and the list of companies to evaluate."},fr:{eyebrow:"LA RECHERCHE · LâAUTRE PORTE DâENTRÃE",h1:"Donnez un article. Stan en tire une thèse â et les sociétés qui la portent.",leadA:"Le même geste que sur la page dâaccueil, avec une autre entrée. ",leadB:"Là vous donnez votre site et Stan en déduit vos critères ; ici vous donnez un article et Stan en déduit une thèse dâinvestissement.",leadC:" Une thèse qui ne finit pas par une idée â elle finit par une liste de sociétés à évaluer.",fieldPh:"collez lâURL dâun article, dâune vidéo ou dâune note",fieldCta:"Demander cette thèse â",fieldNote:"Vous laissez le lien et vos coordonnées : Stan produit la carte mentale, les angles et les sociétés à évaluer, puis on vous lâenvoie. Rien nâest généré à la volée â câest une demande, pas un bouton.",thesesTitle:"Les thèses déjà produites",thesesSub:"Chacune finit par des sociétés â câest ce qui la distingue dâun article de blog.",unreachable:"Lâannuaire de la recherche est injoignable pour lâinstant. Réessayez dans un instant.",none:"Aucune thèse publiée pour lâinstant.",loading:"Chargement des thèsesâ¦",more:"Afficher plus",mindmap:"CARTE MENTALE",open:"Ouvrir dans lâatelier â",archive:"Version précédente de cette page â",askTitle:"Une thèse finit par des sociétés. Et la vôtre ?",seoT:"La recherche â dâun article à une thèse, et aux sociétés qui la portent",seoD:"Donnez un article : Stan en tire une thèse dâinvestissement, ses angles, et la liste des sociétés à évaluer."}},_m=12,m6=()=>typeof location<"u"&&location.hostname.endsWith("proplace.co")?"":"https://proplace.co";function g6(t){if(!t)return"";try{return new URL(t).hostname.replace(/^www\./,"")}catch{return""}}function f6({placeholder:t,cta:n}){const{openRdv:r}=pl(),i=m.useRef(null),[s,a]=m.useState(""),[o,c]=m.useState(!1),l=()=>{var p;const d=s.trim().replace(/\s+/g,"");if(!d||!/^(https?:\/\/)?[^./\s]+\.[^\s]{2,}/.test(d)){(p=i.current)==null||p.focus(),c(!0),window.setTimeout(()=>c(!1),450);return}r(d)};return e.jsxs("div",{className:"ur",children:[e.jsxs("span",{className:"uf",children:[e.jsx("span",{"aria-hidden":"true",children:"ð"}),e.jsx("input",{ref:i,value:s,placeholder:t,autoComplete:"off",spellCheck:!1,inputMode:"url",className:o?"shake":void 0,onChange:d=>a(d.target.value),onKeyDown:d=>{d.key==="Enter"&&l()}})]}),e.jsx("button",{type:"button",className:"ub",onClick:l,children:n})]})}function Tm({src:t,label:n}){const[r,i]=m.useState(!1);return!t||r?e.jsx("span",{className:"ph",children:n}):e.jsx("img",{src:t,alt:"",loading:"lazy",decoding:"async",onError:()=>i(!0)})}function x6(){const{lang:t,localizePath:n}=ae(),r=ps[t],[i,s]=m.useState(null),[a,o]=m.useState(_m);ht({en:{title:`${ps.en.seoT} | Proplace`,description:ps.en.seoD},fr:{title:`${ps.fr.seoT} | Proplace`,description:ps.fr.seoD}}),m.useEffect(()=>{let p=!0;return _p().then(u=>{if(!p)return;if(!u){s({ok:!1,list:[]});return}s({ok:!0,list:u.filter(f=>(f.title||"").trim()).sort((f,L)=>(L.published||"").localeCompare(f.published||""))})}),()=>{p=!1}},[]);const c=n("/carte"),l=(i==null?void 0:i.list)||[],d=l.slice(0,a);return e.jsxs("div",{className:"pp-research",children:[e.jsx("style",{children:v6}),e.jsx(Di,{active:"research"}),e.jsx(Dp,{boxed:!0}),e.jsx("div",{className:"pp-rs-wrap",children:e.jsxs("div",{className:"hd",children:[e.jsx("div",{className:"eyeb",children:r.eyebrow}),e.jsx("h1",{children:r.h1}),e.jsxs("p",{className:"lead",children:[r.leadA,e.jsx("b",{children:r.leadB}),r.leadC]}),e.jsxs("div",{className:"field",children:[e.jsx(f6,{placeholder:r.fieldPh,cta:r.fieldCta}),e.jsx("p",{className:"fnote",children:r.fieldNote})]})]})}),e.jsx("section",{className:"sec",children:e.jsxs("div",{className:"pp-rs-wrap",children:[e.jsx("h2",{children:r.thesesTitle}),e.jsx("p",{className:"sub2",children:r.thesesSub}),i===null&&e.jsx("p",{className:"state",children:r.loading}),i!==null&&!i.ok&&e.jsx("p",{className:"state",children:r.unreachable}),i!==null&&i.ok&&l.length===0&&e.jsx("p",{className:"state",children:r.none}),d.length>0&&e.jsx("div",{className:"notes",children:d.map(p=>{var x,A,w;const u=p.slug||"",g=t==="en"&&!!p.en,f=(g&&((x=p.en)==null?void 0:x.title)||p.title||"").trim(),L=g&&((A=p.en)==null?void 0:A.summary)||p.summary||"",v=g&&((w=p.en)==null?void 0:w.market)||p.market||p.industry||"",y=u?`${g?"/en":""}/research/${u}/`:p.url||"",h=p.mindmap?m6()+(g&&u?`/en/research/mindmaps/${u}.png`:p.mindmap):"",b=(p.author||"").trim()||g6(p.source_url);return e.jsxs("article",{className:"nt",children:[y?e.jsx("a",{className:"im",href:y,tabIndex:-1,"aria-hidden":"true",children:e.jsx(Tm,{src:h,label:r.mindmap},h)}):e.jsx("span",{className:"im",children:e.jsx(Tm,{src:h,label:r.mindmap},h)}),e.jsxs("div",{className:"bd",children:[b&&e.jsxs("div",{className:"au",children:["â ",b.toUpperCase()]}),y?e.jsx("a",{className:"ti",href:y,children:f}):e.jsx("span",{className:"ti",children:f}),L&&e.jsx("p",{className:"su",children:L})]}),e.jsxs("div",{className:"fo",children:[e.jsx("span",{children:v}),u&&e.jsx("a",{className:"evb",href:`${c}?research=${encodeURIComponent(u)}`,children:r.open})]})]},u||f)})}),a<l.length&&e.jsxs("button",{type:"button",className:"more",onClick:()=>o(p=>p+_m),children:["â¾ ",r.more," · ",l.length-a]}),e.jsx("p",{className:"arch",children:e.jsx("a",{href:"/research/v1/",children:r.archive})})]})}),e.jsx(u6,{title:r.askTitle}),e.jsx(Nt,{})]})}function L6(){return e.jsx(ul,{children:e.jsx(x6,{})})}const v6=` 5140.pp-research{font-family:var(--pp-body);color:#0F1D33;background:#fff} 5141.pp-research .pp-rs-wrap{max-width:1180px;margin:0 auto;padding:0 24px} 5142.pp-research .hd{padding:34px 0 26px} 5143.pp-research .eyeb{font-family:var(--pp-body);font-size:12px;color:#8496A8;margin-bottom:11px;font-weight:600;font-variant-numeric:tabular-nums} 5144.pp-research h1{margin:0 0 9px;font-size:clamp(25px,2.9vw,40px);font-weight:600; 5145letter-spacing:-.04em;line-height:1.1;max-width:24ch} 5146.pp-research .lead{font-size:16px;color:#4B5E78;line-height:1.6;max-width:88ch;margin:0} 5147.pp-research .lead b{color:#0F1D33;font-weight:600} 5148.pp-research .field{margin-top:22px;max-width:760px} 5149.pp-research .ur{display:flex;gap:9px} 5150.pp-research .uf{display:flex;align-items:center;gap:9px;flex:1;min-width:0;height:50px; 5151padding:0 15px;background:#fff;border:1px solid #C9D6E6;border-radius:8px;font-size:15px} 5152.pp-research .uf input{flex:1;border:0;outline:none;font-size:15px;background:none; 5153font-family:inherit;min-width:0;color:inherit} 5154.pp-research .uf input.shake{animation:pp-rs-shk .42s} 5155@keyframes pp-rs-shk{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}} 5156.pp-research .ub{flex:none;height:50px;padding:0 22px;border:0;border-radius:8px;background:#12A150; 5157color:#fff;font-size:14.5px;font-weight:600;cursor:pointer;white-space:nowrap;font-family:inherit} 5158.pp-research .ub:hover{background:#0E8A44} 5159.pp-research .fnote{margin:11px 0 0;font-size:12.5px;color:#4B5E78;line-height:1.6;max-width:80ch} 5160.pp-research .sec{padding:40px 0;border-top:1px solid #E3E8F0} 5161.pp-research .sec h2{margin:0 0 8px;font-size:clamp(21px,2.1vw,28px);font-weight:600;letter-spacing:-.03em} 5162.pp-research .sub2{font-size:14.5px;color:#4B5E78;margin:0 0 20px;line-height:1.6;max-width:88ch} 5163.pp-research .state{font-size:13.5px;color:#4B5E78;margin:0} 5164.pp-research .notes{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px} 5165.pp-research .nt{border:1px solid #E3E8F0;border-radius:12px;overflow:hidden;background:#fff; 5166display:flex;flex-direction:column} 5167.pp-research .nt:hover{border-color:#C9D6E6} 5168.pp-research .nt .im{height:130px;background:#F9FBFD;display:grid;place-items:center; 5169border-bottom:1px solid #E3E8F0;overflow:hidden}
5170/* contain, pas cover : une carte mentale recadrée ne veut plus rien dire â 5171 même traitement que la vignette des fiches bakées (research_publish.py). */ 5172.pp-research .nt .im img{width:100%;height:100%;object-fit:contain;display:block;background:#F9FBFD} 5173.pp-research .nt .im .ph{font-family:var(--pp-body);font-size:12px;color:#8496A8;font-weight:600;font-variant-numeric:tabular-nums} 5174.pp-research .nt .bd{padding:15px;flex:1} 5175.pp-research .nt .au{font-family:var(--pp-body);font-size:12px;color:#0E8A44;font-weight:600;margin-bottom:7px;overflow:hidden; 5176text-overflow:ellipsis;white-space:nowrap;font-variant-numeric:tabular-nums} 5177.pp-research .nt .ti{display:block;font-size:15.5px;font-weight:600;letter-spacing:-.02em; 5178line-height:1.25;margin-bottom:8px;color:#0F1D33;text-decoration:none} 5179.pp-research .nt .ti:hover{text-decoration:underline} 5180.pp-research .nt .su{font-size:12.5px;color:#4B5E78;line-height:1.55;margin:0} 5181.pp-research .nt .fo{display:flex;align-items:center;gap:8px;border-top:1px solid #E3E8F0; 5182padding:11px 15px;background:#F9FBFD} 5183.pp-research .nt .fo span{flex:1;min-width:0;font-size:11.5px;color:#4B5E78;overflow:hidden; 5184text-overflow:ellipsis;white-space:nowrap} 5185.pp-research .nt .evb{flex:none;background:#12A150;color:#fff;border-radius:8px;padding:7px 12px; 5186font-size:11.5px;font-weight:600;white-space:nowrap;text-decoration:none} 5187.pp-research .nt .evb:hover{background:#0E8A44} 5188.pp-research .more{display:block;width:100%;margin-top:16px;background:#F9FBFD;border:1px solid #E3E8F0; 5189border-radius:8px;padding:11px;font-family:var(--pp-body);font-size:12px;color:#4B5E78;cursor:pointer;font-weight:600;font-variant-numeric:tabular-nums} 5190.pp-research .more:hover{border-color:#0F1D33;color:#0F1D33} 5191.pp-research .arch{margin:22px 0 0} 5192.pp-research .arch a{font-size:12px;color:#8496A8;text-decoration:none;border-bottom:1px dotted #C9D6E6} 5193.pp-research .arch a:hover{color:#0F1D33} 5194@media(max-width:760px){ 5195 .pp-research .pp-rs-wrap{padding:0 16px} 5196 .pp-research .hd{padding:24px 0 20px} 5197 .pp-research .sec{padding:30px 0} 5198 .pp-research .ur{flex-wrap:wrap} 5199 .pp-research .ub{width:100%} 5200} 5201`,N1="pp-demo-access",b6=/@proplace\.(?:co|tech)$/i,qm=/^[^@\s]+@[^@\s]+\.[^@\s]{2,}$/;function y6(){var t;try{if(localStorage.getItem(N1))return!0}catch{}return!!((t=Ge())!=null&&t.email)}function Fm(t){try{localStorage.setItem(N1,JSON.stringify({email:t,at:new Date().toISOString()}))}catch{}}function j6({lang:t,onGranted:n}){const r=t==="fr",[i,s]=m.useState(""),[a,o]=m.useState(""),[c,l]=m.useState(""),[d,p]=m.useState(!1),u=m.useRef(null);m.useEffect(()=>{var v;(v=u.current)==null||v.focus()},[]);const g=i.trim().toLowerCase(),f=qm.test(g)&&b6.test(g);m.useEffect(()=>{if(!f)return;const v=window.setTimeout(()=>{Fm(g),n()},350);return()=>window.clearTimeout(v)},[f,g,n]);const L=async v=>{if(v.preventDefault(),!d){if(!qm.test(g)){l(r?"Indiquez une adresse email valide.":"Enter a valid email address.");return}if(!f&&(a.match(/\d/g)||[]).length<8){l(r?"Indiquez votre numéro de téléphone.":"Enter your phone number.");return}if(l(""),p(!0),!f)try{await fetch(`${_e}/inbound/demo-access`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:g,phone:a.trim(),lang:t})})}catch{}Fm(g),n()}};return e.jsx("div",{className:"pp-demo-gate",role:"dialog","aria-modal":"true","aria-labelledby":"pp-demo-gate-title",children:e.jsxs("form",{className:"pp-demo-gate-card",onSubmit:v=>{L(v)},noValidate:!0,children:[e.jsx("span",{className:"pp-demo-gate-eyebrow",children:r?"Démo du cockpit Standard":"Standard cockpit demo"}),e.jsx("h2",{id:"pp-demo-gate-title",children:r?"Accédez à la démo":"Access the demo"}),e.jsx("p",{className:"pp-demo-gate-lead",children:r?"Suivez une cible de sa découverte à la signature, avec un vrai mémo détaillé et les vrais emails. Laissez votre email et votre téléphone : Alexandre, votre Corporate Developer, peut vous rappeler pour lâadapter à votre stratégie.":"Follow one target from discovery to signing, with a real detailed memo and the real emails. Leave your email and phone: Alexandre, your Corporate Developer, can call you back to tailor it to your strategy."}),e.jsxs("label",{children:[e.jsx("span",{children:r?"Email professionnel":"Work email"}),e.jsx("input",{ref:u,type:"email",inputMode:"email",autoComplete:"email",required:!0,placeholder:r?"[email protected]":"[email protected]",value:i,onChange:v=>{s(v.target.value),l("")}})]}),e.jsxs("label",{children:[e.jsx("span",{children:r?"Téléphone":"Phone"}),e.jsx("input",{type:"tel",inputMode:"tel",autoComplete:"tel",required:!f,placeholder:"+33 6 12 34 56 78",value:a,onChange:v=>{o(v.target.value),l("")}})]}),c&&e.jsx("p",{className:"pp-demo-gate-error",role:"alert",children:c}),e.jsx("button",{type:"submit",className:"pp-demo-gate-go",disabled:d,children:d?r?"Ouvertureâ¦":"Openingâ¦":r?"Lancer la démo â":"Start the demo â"}),e.jsx("small",{className:"pp-demo-gate-note",children:r?"Vos coordonnées servent uniquement à vous recontacter au sujet de Proplace ; elles ne sont jamais partagées.":"Your details are only used to contact you about Proplace; they are never shared."})]})})}const w6=m.lazy(()=>Vr(()=>import("./TutorialExperience-5ry8LDJZ.js"),__vite__mapDeps([5,2]))),k6={fr:{title:"Démo du cockpit Standard | Proplace",description:"Explorez le cockpit Proplace Standard en plein écran : huit parties guidées, de la découverte dâune cible à la signature dâune acquisition."},en:{title:"Standard cockpit demo | Proplace",description:"Explore the Proplace Standard cockpit in full screen: eight guided parts, from discovering a target to signing an acquisition."}};function A6(){const{lang:t,switchLang:n,localizePath:r}=ae(),i=da(),[s]=j2(),a=Number(s.get("chapter")||1),o=Number.isInteger(a)&&a>=1&&a<=8?a-1:0;ht(k6);const[c,l]=m.useState(()=>y6());return e.jsxs("main",{className:"pp-cockpit-demo-page","aria-label":t==="fr"?"Démo du cockpit":"Cockpit demo",children:[e.jsx(m.Suspense,{fallback:e.jsx("div",{className:"pp-native-loading",role:"status",children:t==="fr"?"Ouverture du cockpit Standardâ¦":"Opening the Standard cockpitâ¦"}),children:e.jsx(w6,{lang:t,initialChapter:o,initialMode:"journey",autoPlay:c,immersive:!0,onLanguageChange:n,onClose:()=>i(r("/")+"#tutoriel")})}),!c&&e.jsx(j6,{lang:t,onGranted:()=>l(!0)})]})}const Om="pp_cookie_ack_v1",S6={en:{consent:t=>e.jsxs(e.Fragment,{children:["We use strictly necessary cookies to operate this site (session, security). No anal
5201ytics or advertising cookies. See our ",t,"."]}),privacyLabel:"Privacy Policy",accept:"Got it"},fr:{consent:t=>e.jsxs(e.Fragment,{children:["Nous utilisons uniquement des cookies strictement nécessaires au fonctionnement de ce site (session, sécurité). Aucun cookie de mesure dâaudience ni de publicité. Consultez notre ",t,"."]}),privacyLabel:"Politique de confidentialité",accept:"Jâai compris"}};function E6(){const{lang:t,localizePath:n}=ae(),r=S6[t],[i,s]=m.useState(!1);m.useEffect(()=>{try{localStorage.getItem(Om)||s(!0)}catch{s(!0)}},[]);const a=()=>{try{localStorage.setItem(Om,new Date().toISOString())}catch{}s(!1)};if(!i)return null;const o=e.jsx(Ti,{to:n("/privacy"),style:{color:"var(--green)",textDecoration:"none"},children:r.privacyLabel});return e.jsxs("div",{role:"dialog","aria-live":"polite",style:{position:"fixed",bottom:16,left:16,right:16,maxWidth:540,margin:"0 auto",background:"#fff",border:"1px solid var(--line, rgba(0,0,0,.1))",borderRadius:10,boxShadow:"0 10px 30px rgba(0,0,0,.08)",padding:"14px 16px",display:"flex",alignItems:"center",gap:12,zIndex:9999,fontFamily:"Inter, -apple-system, BlinkMacSystemFont, sans-serif"},children:[e.jsx("p",{style:{margin:0,fontSize:12.5,color:"var(--sub)",lineHeight:1.55,flex:1},children:r.consent(o)}),e.jsx("button",{type:"button",onClick:a,style:{fontSize:12,fontWeight:600,color:"#fff",background:"var(--ink, #111)",border:"none",borderRadius:6,padding:"8px 14px",cursor:"pointer",flexShrink:0},children:r.accept})]})}function N6(){const[t,n]=m.useState(!1),[r,i]=m.useState(!1);if(m.useEffect(()=>{try{if(window.parent!==window)return;const d=new URLSearchParams(window.location.search),p=(d.get("cb")||d.get("token")||"").trim();if(!/^[A-Za-z0-9]{16}$/.test(p)||!kx(navigator.userAgent||""))return;n(!0)}catch{}},[]),!t)return null;const s=window.location.pathname.includes("/fr"),a=window.location.href,o=/Android/i.test(navigator.userAgent||""),c=()=>{if(o){const p=a.replace(/^https?:\/\//,"");window.location.href=`intent://${p}#Intent;scheme=https;action=android.intent.action.VIEW;end`;return}if(!window.open(a,"_blank","noopener")){const p=document.createElement("a");p.href=a,p.target="_blank",p.rel="noopener",p.click()}},l=async()=>{try{await navigator.clipboard.writeText(a),i(!0)}catch{i(!1)}};return e.jsx("div",{style:{position:"fixed",inset:0,zIndex:400,background:"#F9FBFD",display:"flex",alignItems:"center",justifyContent:"center",padding:24,fontFamily:"Georgia, serif",color:"#0f172a"},children:e.jsxs("div",{style:{maxWidth:440},children:[e.jsx("h1",{style:{fontSize:26,lineHeight:1.25,margin:"0 0 12px"},children:s?"Ouvrir dans le navigateur":"Open in the browser"}),e.jsx("p",{style:{fontSize:15,lineHeight:1.55,color:"#334155",margin:"0 0 16px"},children:s?"Cette fenêtre du mail ne garde pas la connexion. Ouvrez ce lien dans Safari ou Chrome, une seule fois. Ensuite vous restez connecté sur cet appareil : chaque visite prolonge la session, jusquâà un an.":"This mail window does not keep you signed in. Open this link in Safari or Chrome, once. After that you stay signed in on this device: each visit extends the session, up to a year."}),e.jsx("p",{style:{fontSize:13,lineHeight:1.45,wordBreak:"break-all",background:"#fff",border:"1px solid #dbe7df",borderRadius:8,padding:"10px 12px",margin:"0 0 14px"},children:a}),e.jsx("button",{type:"button",onClick:c,style:{display:"block",width:"100%",background:"#0E8A44",color:"#fff",border:0,borderRadius:10,padding:"12px 16px",fontWeight:700,fontSize:15,cursor:"pointer"},children:s?"Ouvrir dans le navigateur":"Open in the browser"}),e.jsx("button",{type:"button",onClick:()=>{l()},style:{display:"block",width:"100%",marginTop:8,background:"#fff",color:"#0E8A44",border:"1px solid #BFE6CF",borderRadius:10,padding:"10px 16px",fontWeight:700,fontSize:14,cursor:"pointer"},children:r?s?"Lien copié":"Link copied":s?"Copier le lien":"Copy the link"}),e.jsx("button",{type:"button",onClick:()=>n(!1),style:{display:"block",width:"100%",marginTop:14,background:"none",border:0,color:"#64748b",fontSize:13,cursor:"pointer",textDecoration:"underline"},children:s?"Continuer dans cette fenêtre":"Continue in this window"})]})})}const Mm=[{path:"",element:e.jsx(Kx,{})},{path:"home-v1",element:e.jsx(H3,{})},{path:"home-v2",element:e.jsx(d5,{})},{path:"accueil-avant",element:e.jsx(h5,{})},{path:"outbound-B2B",element:e.jsx(j5,{})},{path:"documentation",element:e.jsx(nj,{})},{path:"setup",element:e.jsx(sj,{})},{path:"terms",element:e.jsx(aj,{})},{path:"privacy",element:e.jsx(pj,{})},{path:"newsletter",element:e.jsx(m1,{})},{path:"compte",element:e.jsx(g1,{})},{path:"pour/:fund",element:e.jsx(Dj,{})},{path:"pays/:cc",element:e.jsx(Yj,{})},{path:"carte",element:e.jsx(xm,{})},{path:"demo",element:e.jsx(A6,{})},{path:"v1/carte",element:e.jsx(xm,{forceUi:"v1"})}],Rm=[{path:"actualites",element:e.jsx(Sm,{})},{path:"actualites/operations/secteurs",element:e.jsx(c6,{})},{path:"actualites/operations/secteur/:slug",element:e.jsx(Sm,{})},{path:"research",element:e.jsx(L6,{})}];function Pm(){if(typeof window<"u"){const{pathname:t,search:n,hash:r}=window.location;window.location.replace(t.replace(/^\/(?:fr|en)\/cibles\//,"/cibles/")+n+r)}return null}function C6(){return e.jsx(L2,{children:e.jsxs(N2,{children:[e.jsxs(d2,{children:[e.jsx(An,{path:"/en/newsletter",element:e.jsx(m1,{})}),Mm.map(t=>e.jsx(An,{path:t.path===""?"/":`/${t.path}`,element:t.element},`en-${t.path}`)),Mm.map(t=>e.jsx(An,{path:t.path===""?"/fr":`/fr/${t.path}`,element:t.element},`fr-${t.path}`)),Rm.map(t=>e.jsx(An,{path:`/${t.path}`,element:t.element},`sfr-${t.path}`)),Rm.map(t=>
5201e.jsx(An,{path:`/en/${t.path}`,element:t.element},`sen-${t.path}`)),e.jsx(An,{path:"/fr/cibles/*",element:e.jsx(Pm,{})}),e.jsx(An,{path:"/en/cibles/*",element:e.jsx(Pm,{})}),e.jsx(An,{path:"*",element:e.jsx(Kx,{})})]}),!(typeof window<"u"&&new URLSearchParams(window.location.search).get("embed")==="1")&&e.jsx(E6,{}),e.jsx(N6,{})]})})}function Im(){uc.createRoot(document.getElementById("root")).render(e.jsx(Zm.StrictMode,{children:e.jsx(C6,{})}))}if(In())Vr(async()=>{const{installStandardTutorialRuntime:t}=await import("./realCockpitRuntime-BFcvKTRp.js").then(n=>n.r);return{installStandardTutorialRuntime:t}},[]).then(({installStandardTutorialRuntime:t})=>{t(),Im()});else if(dx()){const t=document.createElement("a");t.href="/fr/#tutoriel",t.textContent="Ouvrir la démonstration Standard / Open the Standard walkthrough",document.getElementById("root").append(t)}else Im();export{o8 as $,Ge as A,yw as B,Jy as C,gr as D,fd as E,dl as F,Mh as G,H6 as H,Tx as I,Ib as J,Pb as K,G6 as L,_p as M,Ox as N,Px as O,we as P,Op as Q,Ld as R,ow as S,iw as T,sw as U,Fp as V,_e as W,n3 as X,Gb as Y,q6 as Z,Pw as _,Vn as a,e8 as a$,Ix as a0,D6 as a1,Np as a2,tw as a3,nw as a4,w1 as a5,E4 as a6,na as a7,V4 as a8,Vr as a9,Hb as aA,H4 as aB,Ub as aC,a8 as aD,F6 as aE,W6 as aF,Q6 as aG,bx as aH,t8 as aI,M6 as aJ,ud as aK,Do as aL,Hw as aM,P6 as aN,cb as aO,R6 as aP,Rw as aQ,$6 as aR,Kw as aS,Tw as aT,n1 as aU,r1 as aV,b4 as aW,e1 as aX,V6 as aY,Xw as aZ,Gw as a_,Y6 as aa,Sx as ab,Lb as ac,vb as ad,U6 as ae,wd as af,Kj as ag,aw as ah,B6 as ai,z6 as aj,Mp as ak,Bo as al,vd as am,Br as an,Dn as ao,bd as ap,zr as aq,Ln as ar,Qw as as,Zw as at,fb as au,Js as av,zw as aw,kw as ax,Z6 as ay,K6 as az,r8 as b,Yw as b0,rb as b1,nb as b2,ae as b3,hl as b4,f1 as b5,Rj as b6,mm as b7,wp as b8,pa as b9,xw as bA,fw as bB,c8 as bC,Kt as bD,n8 as bE,i8 as bF,s8 as bG,Vw as bH,Ur as bI,Qr as bJ,s1 as bK,Yh as bL,d3 as bM,p3 as bN,ry as bO,ww as bP,l8 as bQ,iy as bR,jw as bS,lw as bT,T6 as bU,ll as bV,O6 as bW,Yy as bX,Uw as bY,Bn as ba,I6 as bb,Lw as bc,bw as bd,vw as be,xj as bf,uw as bg,dw as bh,cw as bi,Iw as bj,qw as bk,pw as bl,ey as bm,J6 as bn,ew as bo,X6 as bp,rw as bq,Cw as br,ly as bs,_w as bt,Fw as bu,Ow as bv,Mw as bw,mw as bx,hw as by,gw as bz,Qj as c,br as d,Yt as e,$w as f,Jw as g,Lt as h,In as i,e as j,Zj as k,Sw as l,Dw as m,H2 as n,Rt as o,Uo as p,Ew as q,m as r,Y2 as s,am as t,Nw as u,Ww as v,Aw as w,Bw as x,wh as y,ha as z};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.