/* CANDIDATURE FORMATEUR PUBLIC V1.1 — couche additive, limitée à .cand-public */
.cand-public{min-height:100vh;background:var(--bg)}
.cand-shell{width:min(920px,calc(100% - 28px));margin:0 auto;padding:24px 0 40px}
.cand-brand{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:6px 2px 20px;color:var(--text-soft);font-size:.82rem}.cand-brand__logo{display:block;width:min(250px,52vw);height:auto}.cand-brand>span{font-family:var(--font-title);font-weight:600}
.cand-hero{position:relative;overflow:hidden;background:var(--bleu);color:var(--surface);border-radius:18px;padding:34px 36px;box-shadow:var(--shadow)}
.cand-hero:after{content:"";position:absolute;width:220px;height:220px;border:34px solid var(--cuivre);border-radius:50%;right:-100px;top:-115px;opacity:.13}
.cand-kicker{display:block;color:var(--cuivre);font-family:var(--font-title);font-weight:700;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}.cand-hero h1{font-family:var(--font-title);font-size:clamp(1.75rem,4vw,2.55rem);line-height:1.1;margin:7px 0 10px;max-width:650px}.cand-hero p{margin:0;max-width:660px;opacity:.92}
.cand-progress{position:relative;z-index:1;margin-top:28px;display:flex;align-items:flex-start;max-width:590px}.cand-progress__step{display:grid;justify-items:center;gap:6px;min-width:64px;color:color-mix(in srgb,var(--surface) 72%,transparent)}.cand-progress__step>span{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--surface) 45%,transparent);font-family:var(--font-title);font-weight:700;font-size:.78rem}.cand-progress__step>small{font:600 .68rem/1 var(--font-title)}.cand-progress__step.is-active,.cand-progress__step.is-done{color:var(--surface)}.cand-progress__step.is-active>span,.cand-progress__step.is-done>span{background:var(--cuivre);border-color:var(--cuivre);color:var(--anthracite)}.cand-progress>i{height:1px;flex:1;background:color-mix(in srgb,var(--surface) 35%,transparent);margin-top:15px}
.cand-alert{margin-top:18px;padding:13px 16px;border-radius:var(--radius);background:var(--error-bg);color:var(--error);font-weight:600}
.cand-form{margin-top:18px}.cand-step{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:30px;box-shadow:var(--shadow)}.cand-step__head{margin-bottom:24px}.cand-step__head>span{font-family:var(--font-title);font-size:.74rem;font-weight:700;color:var(--cuivre-fonce);text-transform:uppercase;letter-spacing:.07em}.cand-step__head h2{font-family:var(--font-title);font-size:1.45rem;color:var(--bleu);margin:4px 0}.cand-step__head p{margin:0;color:var(--text-soft)}
.cand-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.cand-grid label:not(.cand-upload),.cand-comment{display:flex;flex-direction:column;gap:7px}.cand-grid label>span,.cand-comment>span{font-family:var(--font-title);font-size:.82rem;font-weight:600;color:var(--bleu)}.cand-grid small,.cand-step small{font-family:var(--font-body);font-weight:400;color:var(--text-soft)}.cand-wide{grid-column:1/-1}.cand-field-hint{display:block;margin-top:-2px;font-size:.68rem;line-height:1.3}
.cand-public input,.cand-public textarea,.cand-public select{width:100%;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:11px 12px;outline:none}.cand-public input:focus,.cand-public textarea:focus,.cand-public select:focus{border-color:var(--cuivre);box-shadow:0 0 0 3px color-mix(in srgb,var(--cuivre) 22%,transparent)}.cand-public input[type=checkbox],.cand-public input[type=radio]{width:auto;accent-color:var(--bleu)}
.cand-choice{border:0;padding:0;margin:24px 0 16px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.cand-choice legend{font-family:var(--font-title);font-size:.88rem;font-weight:700;color:var(--bleu);margin-bottom:9px}.cand-choice label{display:flex;align-items:flex-start;gap:10px;padding:14px;border:1px solid var(--border);border-radius:var(--radius);cursor:pointer}.cand-choice label:has(input:checked){border-color:var(--cuivre);background:var(--warn-bg)}.cand-choice span{display:flex;flex-direction:column}.cand-choice small{color:var(--text-soft)}
.cand-structure{padding-top:6px}.cand-same-contact{flex-direction:row!important;align-items:center!important;gap:10px!important;padding:12px 14px;border-radius:10px;background:var(--bg);border:1px solid var(--border)}.cand-same-contact span{font-family:var(--font-body)!important;font-weight:500!important;color:var(--text)!important}.cand-structure-details{margin-top:14px;padding:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}
.cand-selection-summary{display:inline-flex;align-items:center;min-height:32px;margin:0 0 14px;padding:6px 12px;border-radius:999px;background:var(--idea-bg);color:var(--bleu);font:600 .76rem/1 var(--font-title)}
.cand-skills{display:grid;gap:10px}.cand-family{border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;background:var(--surface)}.cand-family--academy{border-color:var(--cuivre)}.cand-family>button{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;border:0;background:var(--surface);padding:15px 16px;color:var(--bleu);font:600 .92rem var(--font-title);cursor:pointer;text-align:left}.cand-family>button:hover{background:var(--bg)}.cand-family>button small{font:500 .7rem/1 var(--font-body);color:var(--text-soft)}.cand-family>button b{font-size:1rem;color:var(--cuivre-fonce);transition:transform .14s ease}.cand-family>button[aria-expanded=true] b{transform:rotate(180deg)}.cand-family__items{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 14px 14px}.cand-skill,.cand-skill-block{min-width:0}.cand-skill{display:flex;align-items:flex-start;gap:9px;padding:11px;border-radius:10px;background:var(--bg);cursor:pointer}.cand-skill:has(input:checked){background:var(--idea-bg)}.cand-skill span{font-size:.88rem}.cand-skill-block{border-radius:10px;background:var(--bg);overflow:hidden}.cand-skill-block>.cand-skill{border-radius:0;background:transparent}.cand-skill-block:has(.cand-skill input:checked){background:var(--idea-bg)}.cand-skill-roles{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:0 11px 11px}.cand-skill-roles>span{color:var(--text-soft);font-size:.7rem}.cand-skill-roles label{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:var(--surface);border:1px solid var(--border);cursor:pointer}.cand-skill-roles label:has(input:checked){border-color:var(--cuivre);background:var(--warn-bg)}.cand-skill-roles b{font:600 .69rem/1 var(--font-title);color:var(--text)}.cand-loading{padding:24px;text-align:center;color:var(--text-soft)}.cand-tariff{margin-top:20px}.cand-money{display:flex;align-items:center;gap:10px}.cand-money input{max-width:180px}.cand-money span{white-space:nowrap;color:var(--text-soft)}
.cand-docs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cand-upload{position:relative;display:grid!important;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;min-height:78px;border:1px dashed var(--border);border-radius:var(--radius);padding:14px;background:var(--surface);cursor:pointer;transition:border-color .14s ease,box-shadow .14s ease,background .14s ease}.cand-upload:hover,.cand-upload.is-dragging{border-color:var(--cuivre);background:var(--warn-bg);box-shadow:var(--shadow)}.cand-upload.has-file{border-style:solid;border-color:var(--good);background:var(--good-bg)}.cand-upload>input[type=file]{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.cand-upload__body{min-width:0;display:grid;gap:3px}.cand-upload__body strong{font:600 .82rem/1.3 var(--font-title);color:var(--bleu)}.cand-upload__body small{font-size:.7rem}.cand-upload__body em{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:normal;font-size:.7rem;color:var(--text-soft)}.cand-upload.has-file .cand-upload__body em{color:var(--good);font-weight:600}.cand-upload__action{position:relative;z-index:1;padding:7px 10px;border-radius:8px;background:var(--bleu);color:var(--surface);font:600 .7rem/1 var(--font-title);pointer-events:none}.cand-proof-zone{display:grid;gap:9px;margin-top:18px}.cand-proof-zone>h3{margin:0;font:600 .92rem var(--font-title);color:var(--bleu)}.cand-proof-zone .cand-docs{margin-top:0}.cand-structure-docs{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.cand-structure-docs h3{font:600 1rem var(--font-title);color:var(--bleu)}.cand-comment{margin-top:20px}.cand-consent{display:flex;align-items:flex-start;gap:10px;margin-top:18px;color:var(--text-soft);font-size:.85rem}.cand-consent input{margin-top:3px}.cand-consent a{color:var(--bleu);font-weight:600}
.cand-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin-top:14px}.cand-btn{appearance:none;border:0;border-radius:10px;background:var(--bleu);color:var(--surface);padding:12px 18px;font:600 .9rem var(--font-title);cursor:pointer}.cand-btn:hover{background:var(--bleu-fonce)}.cand-btn:disabled{opacity:.55;cursor:not-allowed}.cand-btn--ghost{background:var(--surface);color:var(--bleu);border:1px solid var(--border)}.cand-btn--ghost:hover{background:var(--bg)}
.cand-success{margin-top:18px;text-align:center;background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:46px 28px;box-shadow:var(--shadow)}.cand-success__icon{width:58px;height:58px;margin:0 auto 14px;border-radius:50%;display:grid;place-items:center;background:var(--good-bg);color:var(--good);font:700 1.6rem var(--font-title)}.cand-success h2{font-family:var(--font-title);color:var(--bleu);margin:0 0 8px}.cand-success>p{color:var(--text-soft);max-width:580px;margin:0 auto}.cand-success__steps{display:flex;align-items:center;justify-content:center;max-width:700px;margin:28px auto 0}.cand-success__steps>span{display:grid;justify-items:center;gap:6px;max-width:170px}.cand-success__steps b{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--good-bg);color:var(--good);font:700 .75rem var(--font-title)}.cand-success__steps strong{font:600 .72rem/1.35 var(--font-title);color:var(--text)}.cand-success__steps i{height:1px;flex:1;background:var(--border);margin:0 8px 24px}.cand-footer{text-align:center;padding:28px 0 0;color:var(--text-soft);font-size:.76rem}
@media(max-width:680px){.cand-shell{width:min(100% - 20px,920px);padding-top:12px}.cand-brand{padding-bottom:14px}.cand-brand>span{display:none}.cand-brand__logo{width:min(220px,68vw)}.cand-hero{padding:26px 22px;border-radius:15px}.cand-step{padding:22px 17px;border-radius:15px}.cand-grid,.cand-choice,.cand-family__items,.cand-docs{grid-template-columns:1fr}.cand-wide{grid-column:auto}.cand-actions{justify-content:space-between}.cand-actions .cand-btn{flex:1}.cand-progress{max-width:none}.cand-progress__step{min-width:46px}.cand-progress__step>small{font-size:.6rem}.cand-success__steps{display:grid;grid-template-columns:1fr}.cand-success__steps i{width:1px;height:18px;margin:4px auto;background:var(--border)}.cand-upload{min-height:72px}}

/* V1.2 — Activité professionnelle unifiée Person / Structure */
.cand-choice--activity{margin-bottom:18px}.cand-business{margin-top:4px;padding:20px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.cand-business__head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;margin-bottom:16px}.cand-business__head>div{min-width:0}.cand-business__eyebrow{display:block;margin-bottom:3px;color:var(--cuivre-fonce);font:700 .7rem var(--font-title);letter-spacing:.05em;text-transform:uppercase}.cand-business__head h3{margin:0;color:var(--bleu);font:600 1rem var(--font-title)}.cand-business__head p{max-width:430px;margin:0;color:var(--text-soft);font-size:.75rem;line-height:1.45}.cand-identity-business{display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px!important;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}.cand-identity-business span{font-family:var(--font-body)!important;font-weight:500!important;color:var(--text)!important}.cand-business .cand-structure-details{background:var(--surface)}
@media(max-width:680px){.cand-business{padding:16px 13px}.cand-business__head{flex-direction:column;gap:7px}.cand-business__head p{max-width:none}}

/* V1.2.1 — Candidature publique : accordéons, compétences détaillées, tarifs et confirmation */
.cand-public [hidden]{display:none!important}
.cand-skill-options{grid-column:1/-1;display:grid;gap:8px}.cand-skill-options__label{font:600 .72rem var(--font-title);color:var(--text-soft);padding:0 2px}.cand-skill-options__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.cand-skill-roles input.is-auto{opacity:.48}.cand-skill-roles label:has(input.is-auto:checked){border-color:color-mix(in srgb,var(--cuivre) 45%,var(--border));background:color-mix(in srgb,var(--warn-bg) 55%,var(--surface))}.cand-skill-roles label:has(input.is-auto:checked) b{color:var(--text-soft)}
.cand-tariff-panel{margin-top:20px;padding:16px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.cand-tariff-toggle{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.cand-tariff-toggle>input{margin-top:3px}.cand-tariff-toggle>span{display:grid;gap:3px}.cand-tariff-toggle strong{font:600 .82rem var(--font-title);color:var(--bleu)}.cand-tariff-toggle small{font-size:.72rem;color:var(--text-soft)}.cand-tariff-panel .cand-tariff{margin-top:14px}.cand-skill-tariffs{margin-top:14px}.cand-tariff-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.cand-tariff-list>label{display:grid;gap:6px;padding:11px;border-radius:10px;background:var(--surface);border:1px solid var(--border)}.cand-tariff-list>label>span{font:600 .78rem var(--font-title);color:var(--bleu)}.cand-tariff-empty{margin:0;color:var(--text-soft);font-size:.78rem}
.cand-upload [data-required-marker]{color:var(--problem)}
.cand-academy-cta{max-width:760px;margin:30px auto 0;padding:18px 20px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:16px;text-align:left;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.cand-academy-cta>span{align-self:start;padding-top:3px;color:var(--cuivre-fonce);font:700 .68rem var(--font-title);text-transform:uppercase;letter-spacing:.06em}.cand-academy-cta h3{margin:0 0 3px;color:var(--bleu);font:600 .9rem var(--font-title)}.cand-academy-cta p{margin:0;color:var(--text-soft);font-size:.75rem;line-height:1.4}.cand-academy-cta a{white-space:nowrap;text-decoration:none;border-radius:9px;background:var(--bleu);color:var(--surface);padding:10px 12px;font:600 .72rem var(--font-title)}.cand-academy-cta a:hover{background:var(--bleu-fonce)}
@media(max-width:680px){.cand-skill-options__grid,.cand-tariff-list{grid-template-columns:1fr}.cand-academy-cta{grid-template-columns:1fr;text-align:center}.cand-academy-cta>span{justify-self:center}.cand-academy-cta a{white-space:normal}}

/* V1.3 — Lieu de départ + observations par compétence */
.cand-skill-choice-block{min-width:0;border-radius:10px;background:var(--bg);overflow:hidden}.cand-skill-choice-block:has(.cand-skill input:checked){background:var(--idea-bg)}.cand-skill-choice-block>.cand-skill{border-radius:0;background:transparent}.cand-skill-observation{display:grid!important;gap:6px;padding:0 11px 11px}.cand-skill-observation>span,.cand-caces-accessories>span{font:600 .7rem var(--font-title);color:var(--bleu)}.cand-skill-observation>span small,.cand-caces-accessories>span small{font:500 .66rem var(--font-body);color:var(--text-soft)}.cand-skill-observation textarea,.cand-caces-accessories textarea{width:100%;min-height:58px;resize:vertical;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);padding:9px 10px;font:400 .78rem/1.4 var(--font-body)}.cand-skill-observation textarea:focus,.cand-caces-accessories textarea:focus{outline:none;border-color:var(--cuivre);box-shadow:0 0 0 3px rgba(215,166,113,.18)}.cand-caces-accessories{grid-column:1/-1;display:grid!important;gap:7px;padding:12px;border:1px solid var(--border);border-radius:10px;background:var(--surface)}
