/* Configurateur Création-Cession — édition interface du 26/10/2026.
   Styles limités à /configurateur/ ; aucune logique métier modifiée. */
[hidden]{display:none!important}

/* Une composition simple, dans les couleurs du site existant. */
.ws-main{--ws-ink:#173e3c;--ws-muted:#5c726d;--ws-border:#dce7df;--ws-deep:#0a4c52;--ws-mint:#e9f5ef;--ws-shadow:0 12px 42px rgba(28,65,55,.055);padding-bottom:36px}
.ws-main a,.ws-main button,.ws-main input,.ws-main select,.ws-main textarea{touch-action:manipulation}
.ws-heading{max-width:none;margin:0 0 25px;padding:45px 40px 33px;border:1px solid #d6e6dc;border-radius:28px;background:radial-gradient(circle at 97% -17%,rgba(183,226,207,.72),transparent 39%),linear-gradient(115deg,#f5faf5,#e9f5ee 93%);position:relative;overflow:hidden}
.ws-heading .cc-eyebrow{margin-bottom:12px;color:#23776b}
.ws-heading h1{font-size:clamp(2.1rem,4.5vw,3.65rem);line-height:1.095;letter-spacing:-.055em;max-width:790px;margin:0 0 16px;font-weight:810;color:#153a39}
.ws-heading>p:nth-of-type(2){margin:0;max-width:770px;color:#435d57;line-height:1.7;font-size:1.04rem}
.ws-steps{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:25px}
.ws-step{display:inline-flex;align-items:center;gap:9px;background:rgba(255,255,255,.8);border:1px solid #d3e5d9;border-radius:100px;padding:7px 12px;font-size:.82rem;font-weight:680;color:#385d52}
.ws-step b{display:grid;place-items:center;min-width:24px;height:24px;border-radius:50%;background:#d9eae0;color:#155952;font-size:.72rem;font-weight:850}
.ws-step:last-child{margin-right:0}
.ws-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(275px,325px);gap:20px;align-items:start}
.ws-panel{background:#fff;border:1px solid var(--ws-border);border-radius:23px;padding:29px;box-shadow:var(--ws-shadow)}
#workspaceForm{min-width:0}
#workspaceForm fieldset{padding:0;margin:0 0 35px;border:0;min-width:0}
#workspaceForm fieldset+fieldset{border-top:1px solid #e8eee9;padding-top:31px}
#workspaceForm legend{display:flex;align-items:center;gap:12px;margin:0 0 19px;font-size:1.31rem;line-height:1.25;font-weight:790;letter-spacing:-.032em;color:var(--ws-ink)}
#workspaceForm legend span{display:grid;place-items:center;flex:none;width:41px;height:41px;background:#e5f4eb;color:#1c6c5f;border:1px solid #cfe8d9;border-radius:13px;font-size:.78rem;font-weight:820;letter-spacing:.02em;margin:0}
.ws-field{margin-bottom:17px}
.ws-field label,.ws-mini-form label{display:block;margin:0 0 7px;font-size:.88rem;font-weight:730;color:#294d45}
.ws-field input,.ws-field textarea,.ws-field select,.ws-mini-form input{appearance:auto;display:block;width:100%;min-width:0;border:1px solid #cbdad1;border-radius:12px;background:#fbfdfb;padding:12px 13px;color:#153a39;font:inherit;line-height:1.4;transition:border-color .17s ease,box-shadow .17s ease,background .17s ease}
.ws-field input::placeholder,.ws-field textarea::placeholder,.ws-mini-form input::placeholder{color:#84928a}
.ws-field input:hover,.ws-field textarea:hover,.ws-field select:hover,.ws-mini-form input:hover{border-color:#93b5a6}
.ws-field input:focus,.ws-field textarea:focus,.ws-field select:focus,.ws-mini-form input:focus{outline:2px solid #2d9586;outline-offset:1px;border-color:#2d9586;background:#fff}
.ws-field textarea{resize:vertical;min-height:84px}
.ws-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ws-choice{display:flex;align-items:center;gap:11px;min-width:0;min-height:65px;border:1px solid #e0e8e1;background:#fcfdfb;border-radius:13px;padding:13px 14px;color:#29433e;font-size:.89rem;line-height:1.38;font-weight:630;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease,transform .16s ease}
.ws-choice:hover,.ws-app:hover{border-color:#9dbcae;background:#fafdfa;box-shadow:0 6px 20px rgba(17,64,54,.045)}
.ws-choice:has(input:checked){background:#eaf6ee;border-color:#378776;box-shadow:0 0 0 1px #378776 inset}
.ws-choice input,.ws-app input{width:19px;height:19px;min-width:19px;min-height:19px;margin:0;accent-color:#0a6b63;cursor:pointer;flex:none}
.ws-choice:focus-within,.ws-app:focus-within{outline:2px solid #208b81;outline-offset:2px}
.ws-hint,.ws-muted{color:var(--ws-muted);font-size:.88rem;line-height:1.6}
.ws-hint{margin:-6px 0 17px}
.ws-apps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.ws-app{position:relative;display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:12px;min-width:0;min-height:158px;border:1px solid #dce8de;border-radius:17px;padding:19px 16px;background:#fcfdfb;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}
.ws-app:has(input:checked){background:#ecf7f0;border-color:#308573;box-shadow:0 0 0 1px #308573 inset}
.ws-app strong{display:block;font-size:.99rem;line-height:1.36;color:#203f39;letter-spacing:-.017em;font-weight:770}
.ws-app small{display:inline-flex;max-width:100%;margin:10px 0 2px;padding:4px 9px;border-radius:50px;background:#eff2ed;border:1px solid #e2e9e1;color:#47675e;font-size:.71rem;line-height:1.35;font-weight:760}
.ws-app p{margin:8px 0 0;color:#5d7068;font-size:.82rem;line-height:1.53}
.ws-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.ws-actions{display:flex;gap:13px;align-items:center;flex-wrap:wrap;margin-top:0;padding-top:25px;border-top:1px solid #e8eee9}
.ws-actions .cc-button.primary{border-radius:13px;padding:14px 20px;box-shadow:0 8px 18px #0a4c5221;line-height:1.35;font-size:.91rem}
.ws-actions .cc-button.primary:hover{box-shadow:0 11px 25px #0a4c522b}
.ws-actions .cc-button.primary:disabled{opacity:.65;cursor:wait}
.ws-text-button{border:0;background:transparent;text-decoration:underline;text-decoration-color:#9fbcb0;text-underline-offset:3px;cursor:pointer;color:#366e63;font:inherit;font-size:.88rem;font-weight:680;padding:8px}
.ws-text-button:hover{color:#0b4e4c}
.ws-status{font-size:.85rem;min-height:22px;line-height:1.6;color:#526d64}
.ws-status[data-kind="error"]{color:#ad3535}
.ws-status[data-kind="ok"]{color:#236c4e}
.ws-status:empty{display:none}
.ws-side{display:grid;gap:16px;min-width:0}
.ws-side .ws-panel{padding:25px}
.ws-sticky{position:sticky;top:104px;background:linear-gradient(180deg,#123f42,#0b3638);border-color:#174d4b;box-shadow:0 14px 38px #153a3520;color:#f5fffb}
.ws-sticky h2{color:#fff}
.ws-sticky .ws-muted{color:#cce2d8}
.ws-panel h2{font-size:1.25rem;line-height:1.25;letter-spacing:-.029em;margin:0 0 13px;font-weight:780}
.ws-sticky #summary{margin:0 0 15px;font-size:.93rem}
.ws-sticky #summaryApps{margin:0 0 19px}
.ws-summary-item{position:relative;padding:11px 10px 11px 29px;border:1px solid #ffffff26;border-radius:10px;background:#ffffff13;margin:7px 0;color:#e9f6ee;font-size:.85rem;line-height:1.4;font-weight:650}
.ws-summary-item:before{content:'✓';position:absolute;left:10px;color:#8fe0b4;font-weight:850}
.ws-sticky .cc-button.secondary{border:1px solid #d0e7db;background:#f4fcf5;color:#0b4c49;width:100%;border-radius:12px;padding:13px 15px;font-size:.88rem}
.ws-sticky .cc-button.secondary:hover{background:#fff}
.ws-divider{font-size:.79rem;line-height:1.55;color:#c3d9cf;border-top:1px solid #ffffff35;padding-top:16px;margin:16px 0 0}
.ws-mini-form{display:grid;gap:10px;margin:15px 0 0}
.ws-mini-form button{justify-self:start;border-radius:11px;font-size:.86rem;padding:11px 15px}
.ws-side #accountSection{border-color:#dde8df}
.ws-side #accountSection h2{color:#183e39}
.ws-side #accountSection .ws-muted{margin-bottom:12px}
.ws-side #accountSection .ws-status{margin-top:11px}
.ws-trap{display:none!important}
#workspaceForm fieldset{scroll-margin-top:115px}
@media(max-width:1050px){.ws-apps{grid-template-columns:1fr}.ws-app{min-height:0}}
@media(max-width:850px){.ws-layout{grid-template-columns:minmax(0,1fr)}.ws-side{grid-template-columns:repeat(2,minmax(0,1fr))}.ws-sticky{position:static}.ws-apps{grid-template-columns:repeat(2,minmax(0,1fr))}.ws-app{min-height:145px}}
@media(max-width:670px){.ws-heading{margin-bottom:16px;padding:27px 20px 23px;border-radius:21px}.ws-heading h1{font-size:clamp(2rem,8vw,2.75rem)}.ws-heading>p:nth-of-type(2){font-size:.96rem;line-height:1.62}.ws-steps{gap:6px;margin-top:19px}.ws-step{padding:6px 9px;font-size:.75rem;gap:6px}.ws-step b{width:20px;min-width:20px;height:20px;font-size:.66rem}.ws-layout{gap:15px}.ws-panel{padding:20px 17px;border-radius:19px}#workspaceForm legend{font-size:1.15rem;gap:10px}#workspaceForm legend span{width:36px;height:36px;border-radius:11px}#workspaceForm fieldset{margin-bottom:28px}#workspaceForm fieldset+fieldset{padding-top:26px}.ws-choices,.ws-apps,.ws-row,.ws-side{grid-template-columns:1fr}.ws-choice{min-height:54px}.ws-app{min-height:0;padding:17px 14px}.ws-side .ws-panel{padding:21px}.ws-actions{padding-top:17px}.ws-actions .cc-button.primary{width:100%}.ws-actions .ws-text-button{margin:auto}}
@media(prefers-reduced-motion:reduce){.ws-main *{transition:none!important}}

/* Navigation du configurateur / accueil : les liens restent accessibles sur mobile. */
@media(max-width:1100px){
 .ws-site-nav .cc-nav{flex-wrap:wrap;column-gap:12px;row-gap:8px;padding:10px 0}
 .ws-site-nav .cc-links{flex:1 0 100%;order:3;gap:22px;margin-left:0;display:flex;overflow-x:auto;padding:4px 0 6px;scrollbar-width:thin}
 .ws-site-nav .cc-pill{margin-left:auto}
}

.cc-help-cta{display:flex;justify-content:space-between;align-items:center;gap:25px;background:#edf6ef;padding:25px 29px;border:1px solid #cfdfd2;border-radius:21px;margin-top:34px}.cc-help-cta h2{font-size:1.45rem;margin:0 0 6px;letter-spacing:-.035em}.cc-help-cta p:not(.cc-eyebrow){margin:0;color:#476c5b;font-size:.9rem}.cc-help-cta .cc-eyebrow{margin-bottom:9px}.cc-help-cta>a{flex-shrink:0}.cc-help-cta .cc-button{white-space:nowrap}

@media(max-width:590px){.cc-help-cta{flex-direction:column;align-items:stretch;margin:24px 15px 0;padding:22px}.cc-help-cta>a{text-align:center;justify-content:center}}

/* Confirmation publique sans obligation de compte CRM. */
.ws-result{margin-top:15px;padding:19px 20px;border:1px solid #b7d9c3;background:#edf8f0;border-radius:15px;color:#1a4d3f}
.ws-result strong{display:block;font-size:1.09rem}
.ws-result p{margin:8px 0 13px;line-height:1.55;color:#345f4f}
.ws-result-links{display:flex;flex-wrap:wrap;gap:9px}
.ws-result-links .cc-button{font-size:.87rem}
@media(max-width:590px){.ws-result-links{flex-direction:column}.ws-result-links .cc-button{justify-content:center}}

/* Code reçu / renvoi : commandes lisibles sur mobile, sans modifier le design principal. */
.ws-mini-form .ws-text-button{justify-self:start;padding:7px 0;text-align:left;font-size:.83rem}
.ws-mini-form button:disabled{opacity:.65;cursor:wait}
