/* CAP ENTREPRENDRE — V6 Finition éditoriale, 9 octobre 2026.
   Couche purement visuelle : les règles d'indemnisation et leurs gardes-fous
   restent séparés dans js/rules.js. Système 100 % autonome / file://. */
:root{
  --bg:#f7f7f4;
  --paper:#ffffff;
  --ink:#1b322d;
  --muted:#52695f;
  --faint:#65786e;
  --line:#dfe9e1;
  --blue:#266f5a;
  --blue-dark:#174a3b;
  --blue-pale:#eff6f0;
  --navy:#172f2a;
  --teal:#23624d;
  --teal-soft:#edf6ef;
  --orange:#946628;
  --orange-soft:#fbf4e8;
  --radius:18px;
  --shadow:0 10px 36px rgba(17,57,40,.045);
  --font:system-ui,-apple-system,"Segoe UI",Arial,sans-serif;
  --serif:"Iowan Old Style","Baskerville","Palatino Linotype",Georgia,serif;
  --color-forest:#163f32;
  --color-green:#21664f;
  --color-gold:#c69a5b;
  --color-cream:#f6f3ec;
}
html{scroll-behavior:smooth;scroll-padding-top:96px}
body{background:var(--bg);color:var(--ink);font:400 15px/1.65 var(--font);letter-spacing:-.011em}
button,input,select,textarea{font-family:inherit}
button,a{ -webkit-tap-highlight-color:transparent }
svg.ui-icon{fill:currentColor}
svg.ui-icon path{fill:currentColor!important} /* Correctif source : anciens tracés forcés à noir. */
:where(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #c49a58!important;outline-offset:3px!important}
::selection{background:#d9eadb;color:#16392c}
/* Surface cohérente et séparations douces, pas d'effets 'dashboard' superflus. */
.site-header{background:rgba(255,255,255,.98);border-color:#e4ebe5}
.header-inner{height:72px;min-height:72px}
.shell-menu-button{width:44px;height:44px;border-radius:12px;border-color:#dae7dd;color:var(--color-forest)}
.shell-menu-button:hover{background:#edf4ed}
.header-breadcrumb b{color:#234436;font-size:13px}
.header-chapter{color:#5b7066}
.private-pill{background:#ecf6ee;color:#266b4d;font-size:11.5px;min-height:34px}
.edition-indicator{color:#556d60;font-size:12px}
.notice-strip{background:#f1f3ee;border-color:#e9ede7;color:#53685f;font-size:11.5px}
.notice-strip strong{color:#294c3d}
/* Barre latérale : un accent actif et un langage d'icônes unique. */
.global-sidebar{border-right:1px solid #e5ebe5;box-shadow:3px 0 18px rgba(19,45,35,.014)}
.sidebar-brand{min-height:96px}
.logo-symbol{background:#edf3e9;color:#326d55;border-radius:13px}
.logo-lettering strong{font-family:var(--serif);font-size:29px}
.logo-lettering strong span{color:#aa7f3c}
.logo-lettering small{font-size:9px;color:#5e7566}
.sidebar-category{color:#5d756a;font-size:10px}
.global-sidebar .nav-button,.sidebar-secondary{min-height:49px;font-size:13.5px;font-weight:650;color:#415b51;gap:13px}
.nav-ico{color:#527b69;transition:color .18s ease;}
.global-sidebar .nav-button:hover,.sidebar-secondary:hover{background:#f2f7f2;color:#1e5944}
.global-sidebar .nav-button:hover .nav-ico{color:#1a6a4e}
.global-sidebar .nav-button.is-active{background:#e8f2e9;color:#164d37;box-shadow:inset 3px 0 #286d50}
.global-sidebar .nav-button.is-active .nav-ico{color:#166d4b}
.sidebar-secondary{color:#49675b}
.sidebar-secondary .nav-ico{color:#b18a4b}
.sidebar-collapse{color:#315b4b}
.sidebar-safe{background:#f2f6f0;border:1px solid #e1ece3}
.safe-icon{color:#286e52}
.sidebar-safe b{font-size:12px}
.sidebar-safe small{font-size:11px;color:#65776c}
/* Hero : équilibre photo / titre, hauteur maîtrisée et vraie typographie éditoriale. */
.hero{min-height:330px;margin-top:24px;padding:44px 52px;border-radius:20px;box-shadow:0 20px 40px rgba(22,50,37,.085)}
.hero:before{background:linear-gradient(90deg,rgba(12,49,40,.985) 0%,rgba(14,50,41,.97) 34%,rgba(14,48,40,.85) 53%,rgba(14,42,36,.22) 84%,rgba(10,25,22,.08) 100%)}
.hero-photo img{object-position:center 51%}
.hero-copy{max-width:640px}
.eyebrow{color:#efd8ae;font-size:10px;letter-spacing:.16em}
.hero h1{font-family:var(--serif);font-size:clamp(2.85rem,4.1vw,4.2rem);letter-spacing:-.045em;line-height:1.07}
.hero h1 em{color:#e7c898;letter-spacing:-.045em}
.hero p{font-size:15.5px;line-height:1.75;max-width:540px}
.hero-start,.hero-guide{min-height:49px;font-size:13px;font-weight:720;border-radius:10px}
.hero-start{background:#edcfa3;color:#20362e}
.hero-start:hover{background:#f5dfbb}
.hero-guide .ui-icon{color:#f3dab0}
.hero-caption{font-size:11.5px;color:#f4f5f0;opacity:1}
.caption-mark .ui-icon{color:#edca90}
.hero-image-caption b{font-family:var(--serif);font-size:18px}
/* Réassurance et séparation des sections. */
.benefits-bar{margin-top:17px;margin-bottom:33px;padding:20px 25px;background:#fff;border:1px solid #e6ece5;border-radius:15px;box-shadow:none}
.benefit-icon{background:#f0f5ed;color:#22684e;width:44px;height:44px}
.benefits-bar b{font-size:13.5px;color:#27493c}
.benefits-bar small{font-size:11.8px;color:#5d7769}
.wizard-intro{margin-bottom:17px;align-items:center}
.section-overline{color:#267150;font-size:10.5px}
.wizard-intro h2{font-family:var(--serif);font-size:clamp(2rem,3.1vw,2.6rem);font-weight:500;letter-spacing:-.045em}
.wizard-intro p{font-size:13.5px;color:#597064;max-width:650px}
.intro-counter strong{color:#28664b;font-size:32px}
.intro-counter span{font-size:12px;color:#526b5f}
/* Exemple facultatif : pas de fausses données par défaut. */
.demo-invite{display:flex;gap:18px;justify-content:space-between;align-items:center;padding:17px 22px;margin-bottom:18px;background:linear-gradient(105deg,#fbfaf5,#f4f6ee);border:1px solid #e5e5d9;border-radius:15px;box-shadow:0 6px 25px rgba(50,49,25,.028)}
.demo-invite-content{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:3px}
.demo-tag{font-size:10.5px;font-weight:840;letter-spacing:.11em;color:#967038}
.demo-invite-content strong{font-size:15px;font-weight:770;color:#244638}
.demo-invite-content>span:last-child{font-size:12.5px;color:#607367;line-height:1.5}
.demo-cta{border:1px solid #bcd5c4;background:#fff;color:#225b44;display:flex;align-items:center;justify-content:center;gap:13px;padding:12px 17px;white-space:nowrap;font-size:12.5px;font-weight:750;border-radius:10px;min-height:46px;flex:none;transition:background .18s,border-color .18s,transform .18s}
.demo-cta:hover{background:#e9f4eb;border-color:#75a58a;transform:translateY(-1px)}
.demo-cta span{font-size:18px}
.demo-flag{display:flex;align-items:center;gap:10px;padding:14px 16px;border:1px solid #eadabc;background:#fcf9ee;border-radius:12px;color:#62502f;font-size:12.5px;margin:20px 0 12px}
.demo-flag-dot{width:10px;height:10px;flex:none;background:#b58336;border-radius:50%}
.demo-flag>span:nth-child(2){flex:1;line-height:1.55}
.demo-flag b{color:#6a4b24}
.demo-flag button{font-size:12px;font-weight:720;border-radius:8px;border:1px solid #e2cead;background:#fff;padding:10px 12px;color:#765329;cursor:pointer}
.demo-flag button:hover{background:#fff5e4}
/* Étapes : plus lisibles et confortables, sans quatre colonnes de formulaire. */
.wizard-layout{grid-template-columns:235px minmax(0,1fr);gap:20px}
.wizard-aside,.wizard-panel{border-color:#e3eae4;box-shadow:0 10px 34px rgba(24,59,42,.03);border-radius:17px;background:#fff}
.wizard-panel{padding:37px 42px 40px}
.wizard-aside{top:91px}
.aside-top{padding:30px 23px 20px}
.aside-kicker{font-size:10px;color:#42775c}
.aside-top h2{font-family:var(--serif);font-size:25px}
.aside-top p{font-size:12px;color:#5b7465}
.step-list{padding:0 12px 13px}
.step-button{gap:12px;padding:15px 12px;min-height:65px;border-radius:10px}
.step-button.is-current{background:#e8f2eb;box-shadow:inset 3px 0 #236b50}
.step-button b{font-size:13.2px;color:#264538}
.step-button small{font-size:11px;color:#597166}
.step-indicator{background:#f0f5f0;color:#47725e;border-color:#d5e6d9}
.step-button.is-current .step-indicator{background:#225d47;border-color:#225d47}
.aside-foot{background:#f9fbf8}
.aside-foot b{font-size:12px;color:#224e38}
.aside-foot p{font-size:11.5px;color:#5e7869}
.wizard-topline #stepEyebrow{color:#2b7452;font-size:11px}
.wizard-topline #progressText{font-size:11px;color:#62786b}
.progress-track{height:6px;background:#eaf1eb}
.progress-track span{background:#2b7956;transition:width .23s ease}
.step-heading.compact-heading{margin-top:37px;margin-bottom:26px}
.step-icon{color:#27664b;background:#eef5ef;border-color:#d8e8db;min-width:50px;height:50px;font-size:13px}
.kicker{color:#4f7763;font-size:10.5px;letter-spacing:.1em}
.step-heading.compact-heading h2,.result-head h2{font-size:clamp(1.95rem,2.6vw,2.35rem);line-height:1.19;letter-spacing:-.045em;color:#19352d}
.step-heading.compact-heading p{font-size:14px;color:#566d60;line-height:1.7;margin-top:9px}
.essential-label{font-size:11px;color:#286747;margin-bottom:21px}
.essential-label small{color:#536e5d;font-size:11px}
.compact-form{gap:26px 24px}
.field>label,.compact-form .field>label{font-size:14px;line-height:1.5;color:#263f35;font-weight:740}
.compact-form .field input:not([type="checkbox"]),.compact-form .field select,.field input:not([type="checkbox"]),.field select{min-height:54px;border-radius:11px;border-color:#cfded2;color:#1c3629;font-size:14.5px;line-height:1.4}
.field input::placeholder{color:#6d8272;opacity:1;font-size:13.5px}
.field input:focus,.field select:focus,.edit-table input:focus{border-color:#246b50;box-shadow:0 0 0 4px rgba(32,112,76,.11)}
.field-help{font-size:12.5px;color:#526e5e;line-height:1.62;margin-top:8px}
.input-suffix>span{font-size:12px;color:#55725f}
.optional{font-size:11px;color:#587e65}
.inline-info{background:#f3f8f2;border:1px solid #dceade;color:#436352;padding:18px;border-radius:12px;font-size:12.8px;line-height:1.6}
.info-glyph{color:#235b43;background:#dfeee3}
.inline-warning{background:#fff7ea;border-color:#efddbd;color:#72542d}
.progressive-details{border-color:#e0e8e0;margin:21px 0}
.progressive-details>summary{padding:18px 20px;color:#274b3b}
.progressive-details>summary b{font-size:14px}
.progressive-details>summary small{font-size:12.5px;color:#5e7768}
.progressive-details>summary .expand-symbol{background:#e9f3e9;color:#2c7450}
.progressive-details>.details-note{color:#516d60}
.choice-icon{color:#266d51;background:#e7f3e8}
.choice-title{color:#1f4c39}
.choice-desc{color:#526b5e}
.choice-card{border-color:#dce7dd}
.choice-card:has(input:checked){background:#eef8f0;border-color:#76a98b}
.quick-acre-note{background:#f5f8f2;border-color:#e0eadf;color:#416351;font-size:13px}
.activity-feedback{font-size:12.5px}
.button{font-size:13.5px;min-height:47px;font-weight:735;border-radius:10px}
.button-primary{background:#1e654a;border-color:#1e654a;box-shadow:0 6px 16px rgba(25,98,68,.11)}
.button-primary:hover{background:#15553e;border-color:#15553e}
.button-secondary{background:#f5f8f3;border-color:#dce8dd;color:#26533d}
.button-secondary:hover{background:#e9f2e9}
.button-tertiary{color:#236349}
.wizard-actions{margin-top:32px;padding-top:24px}
.wizard-actions>span{font-size:12px;color:#5d7567}
/* Bilan : chiffres importants d'abord, couleurs sémantiques calmes. */
.result-head{margin-top:34px}
.result-head p{font-size:13px;color:#547064}
.result-badge{background:#ebf6ed;color:#25694d;border-radius:99px}
.result-status{background:#f4faf4;border-color:#d5e8d8;border-radius:13px}
.status-label b{font-size:14px;color:#285c41}
.status-label small{font-size:12px;color:#506e5b}
.status-expand{color:#256348}
.status-details>p{font-size:12.8px;color:#4b6b57}
.status-details .payout-note p{font-size:12.3px}
.result-cards{gap:15px}
.metric-card{min-height:148px;padding:25px 26px;background:#f8faf7;border-color:#e2eae2;border-radius:15px}
.metric-card>span{color:#47675a;font-size:12.5px}
.metric-card strong{color:#203d31;font-size:clamp(1.7rem,2.7vw,2.4rem)}
.metric-card small{font-size:12px;color:#5c7567}
.metric-card.metric-feature{background:#174936;border:1px solid #174936;color:#fff;box-shadow:0 11px 25px rgba(19,74,51,.14)}
.metric-card.metric-feature>span,.metric-card.metric-feature small{color:#e5f4e9}
.metric-card.metric-feature strong{color:#fff}
.insight-card,.timeline-card{border-color:#e0e9e1;padding:25px;border-radius:16px}
.card-header h3{font-size:17px;color:#223b2f}
.card-header p{font-size:12px;color:#5d7666}
.comparison-track>span{background:#ba9158}
.comparison-track.secondary>span{background:#347d5e}
.bar-fill{background:#99c4aa}
.bar-fill.is-first{background:#2b7b5b}
.results-table thead th{background:#eef5ef;color:#395746}
.results-table td b{color:#21684b}
.alert-card{border-radius:12px}
.alert-card h4{font-size:14px}
.alert-card p{font-size:12.5px;color:#5b6b61}
.next-steps{background:#f2f6ee;border:1px solid #e3ebdf;border-radius:16px}
.quick-links{background:#eaf3eb;border-color:#d5e8d9;padding:23px}
.quick-links h3{font-size:14px}
.quick-links p{font-size:12.5px;color:#516c5a}
.small-square{background:#d7e9d9;color:#246548}
/* Guides harmonisés aux mêmes règles typographiques et de contrastes. */
.page-container h1,.section-heading h2{font-family:var(--serif);font-weight:500}
.page-lead{font-size:15px;color:#556b60}
.page-eyebrow,.guide-index{color:#347653}
.guide-summary,.guide-sidecall,.info-panel,.compare-card,.org-card,.aid-card,.source-group,.learn-card{border-color:#e0e9e0}
.guide-copy a,.org-card a,.aid-card a,.text-link,.tool-comparison a{color:#1e694b}
.faq-list summary{color:#244c39;font-size:15px}
.site-footer{background:#183a30}
.site-footer .footer-brand{font-family:var(--serif)}
.site-footer .footer-bottom{color:#d0ddd1}
/* Interaction utile, sans bruit. */
@media(hover:hover){
  .choice-card:hover,.compare-card:hover,.aid-card:hover,.org-card:hover{border-color:#a4c9ad}
  .step-button:hover{background:#f1f7f1}
}
@media(max-width:1100px){
  .global-sidebar .nav-ico{color:#527b69}
  .header-inner{height:66px;min-height:66px}
}
@media(max-width:900px){
  .wizard-layout{display:block}
  .wizard-aside{border-radius:15px}
  .step-list{padding:9px}
  .step-button,.step-button.is-current{min-height:63px}
  .wizard-panel{padding:34px 32px}
  .hero{min-height:310px;padding:40px 36px}
}
@media(max-width:700px){
  body{font-size:14.5px}
  .container{width:calc(100% - 32px)}
  .hero{min-height:340px;padding:32px 27px}
  .hero h1{font-size:clamp(2.55rem,7.4vw,3.4rem)}
  .hero p{font-size:14px}
  .benefits-bar{padding:16px;margin-bottom:27px}
  .benefits-bar b{font-size:11.8px}
  .benefits-bar small{font-size:10.7px}
  .demo-invite{gap:12px;padding:18px;align-items:flex-start}
  .demo-invite-content>span:last-child{font-size:12.8px}
  .wizard-panel{padding:28px 24px}
  .step-heading.compact-heading p{font-size:13.5px}
  .step-heading.compact-heading h2{font-size:29px}
  .step-button b{font-size:12px}
  .result-two-col{grid-template-columns:1fr}
}
@media(max-width:470px){
  .container{width:calc(100% - 24px)}
  .header-inner{height:62px;min-height:62px}
  .hero{min-height:390px;padding:28px 23px}
  .hero .eyebrow{font-size:9.5px}
  .hero h1{font-size:clamp(2.45rem,10.3vw,3.25rem);line-height:1.11}
  .hero p{font-size:14px;line-height:1.64}
  .hero-caption{font-size:11px}
  .hero-start,.hero-guide{min-height:47px;font-size:12.8px}
  .benefits-bar{grid-template-columns:1fr;gap:7px}
  .benefits-bar>div{padding:5px 0}
  .benefits-bar b{font-size:12.5px}
  .benefits-bar small{font-size:11.3px}
  .wizard-intro{gap:10px}
  .wizard-intro h2{font-size:29px}
  .wizard-intro p{font-size:12.5px}
  .demo-invite{display:grid;grid-template-columns:1fr;gap:12px}
  .demo-cta{width:100%;white-space:normal;font-size:12.8px}
  .step-list{padding:8px}
  .step-button,.step-button.is-current{padding:10px 7px;min-height:58px}
  .step-button b{font-size:11.3px}
  .wizard-panel{padding:25px 19px}
  .wizard-topline #stepEyebrow,.wizard-topline #progressText{font-size:10.3px}
  .step-heading.compact-heading{margin-top:26px;margin-bottom:22px}
  .step-heading.compact-heading h2{font-size:26px}
  .step-heading.compact-heading p{font-size:13px}
  .field>label,.compact-form .field>label{font-size:13.5px}
  .field-help{font-size:12.3px}
  .compact-form{gap:18px}
  .compact-form .field input:not([type="checkbox"]),.compact-form .field select{min-height:52px;font-size:14px}
  .metric-card{min-height:125px;padding:21px}
  .metric-card strong{font-size:2rem}
  .metric-card>span{font-size:12.8px}
  .metric-card small{font-size:12px}
  .insight-card,.timeline-card{padding:19px}
  .demo-flag{display:grid;grid-template-columns:12px minmax(0,1fr);gap:9px}
  .demo-flag button{grid-column:2;justify-self:start}
  .wizard-actions .button{font-size:12px;min-height:46px}
  .status-label small{font-size:11.5px}
  .page-lead{font-size:14px}
}
@media(max-width:360px){
  .wizard-panel{padding:22px 15px}
  .hero{padding:26px 19px}
  .hero h1{font-size:2.35rem}
  .intro-counter{display:none}
  .step-button{padding:10px 5px}
  .step-button b{font-size:10.9px}
  .demo-invite{padding:15px}
}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}
@media print{.demo-invite,.demo-flag{display:none!important}}

/* Harmonisation : neutraliser les derniers bleus électriques de V1/V2.
   Vert = information/action, sable = capital/comparaison, ambre = avertissement. */
.decision-advice{border-left-color:#2e7656;background:#f2f8f2;color:#486854;font-size:12px}
.decision-advice b{color:#205f43;font-size:12.5px}
.comparison-result .compare-amount,.compare-decision a{color:#206548}
.mini-lesson>summary,.verify-category>summary,.quick-acre-note a,.mini-lesson a{color:#1d6549}
.learn-card>span,.learn-card a,.tool-comparison a,.panel-number,.section-heading span,.source-entry a{color:#206b4d}
.info-panel .panel-emphasis{background:#f1f7f1;border-left-color:#2e7754;color:#476651}
.recommendation,.source-banner{background:#183d31}
.recommend-icon{background:#2f7755;color:#fff}
.recommendation small{color:#d7e6d3}
.recommendation p,.source-banner p{color:#d6e6d8}
.comp-tag,.org-card>span{color:#28734f}
.compare-card.featured{border-color:#9bbda3;box-shadow:0 6px 20px rgba(22,87,54,.045)}
.source-entry p,.privacy-panel p,.info-panel p,.guide-check,.clean-table td,.compare-card>p,.compare-card dd,.org-card p,.aid-card p,.faq-list details p{color:#50685a;font-size:12.5px}
.guide-check{background:#f6f9f5}
.faq-list summary:after{color:#286e4c}
.toast{background:#193d31;box-shadow:0 12px 36px rgba(20,45,31,.23);font-size:13px}
.results-table td b,.card-header .text-link{color:#206449}
/* Des icônes cohérentes même si le navigateur expose les attributs SVG d'origine. */
.global-sidebar .ui-icon path,.hero .ui-icon path,.benefits-bar .ui-icon path{fill:currentColor!important}
