/* Portée limitée au tunnel ; couleurs relevées dans app.css existant. */
#lmc-tunnel{box-sizing:border-box;max-width:640px;margin:0 auto;padding:24px 20px;font-family:Roboto,Arial,sans-serif;font-size:16px;line-height:1.5;color:#32424d}
#lmc-tunnel *{box-sizing:border-box}
#lmc-tunnel .lmc-area{font-size:13px;color:#0f4c81;margin:0 0 6px}
#lmc-tunnel h1{font-size:26px;line-height:1.2;color:#0f4c81;margin:0 0 10px}
#lmc-tunnel h2{font-size:21px;line-height:1.3;color:#0f4c81;margin:0 0 16px}
#lmc-tunnel .lmc-intro>p:last-child{font-size:14px;margin:0 0 18px}
#lmc-tunnel #form-step{position:static;width:100%;height:auto;min-height:0;padding:20px;border:1px solid #dde3e8;border-radius:10px;background:#fefefe}
#lmc-tunnel #form-step-1,#lmc-tunnel #form-step-2,#lmc-tunnel #form-step-3,#lmc-tunnel #form-step-4{position:static;flex-direction:column;width:100%;height:auto}
#lmc-tunnel #form-step-2,#lmc-tunnel #form-step-3,#lmc-tunnel #form-step-4{display:none}
#lmc-tunnel .lmc-progress-label{font-size:13px;margin:0 0 6px}
#lmc-tunnel progress{appearance:none;display:block;width:100%;height:5px;border:0;border-radius:4px;margin:0 0 20px;background:#e9edf0;color:#e28c3a}
#lmc-tunnel progress::-webkit-progress-bar{background:#e9edf0;border-radius:4px}
#lmc-tunnel progress::-webkit-progress-value{background:#e28c3a;border-radius:4px}
#lmc-tunnel progress::-moz-progress-bar{background:#e28c3a;border-radius:4px}
#lmc-tunnel .lmc-choices{display:grid;grid-template-columns:1fr 1fr;gap:10px}
#lmc-tunnel .lmc-stages{grid-template-columns:1fr}
#lmc-tunnel .lmc-choice label{display:flex;align-items:center;gap:10px;min-height:60px;height:100%;padding:12px;border:1px solid #d6dfe7;border-radius:8px;font-size:14px;line-height:1.4;color:#32424d;margin:0;cursor:pointer}
#lmc-tunnel .lmc-choice label:has(input:checked){background:#fff4e8;border-color:#e28c3a}
#lmc-tunnel input[type=radio],#lmc-tunnel input[type=checkbox]{appearance:auto;position:static;opacity:1;width:18px;height:18px;min-width:18px;margin:0;accent-color:#0f4c81}
#lmc-tunnel input:not([type=radio]):not([type=checkbox]):not([type=hidden]){display:block;width:100%;max-width:100%;height:46px;font-family:inherit;font-size:16px;line-height:1.4;color:#32424d;background:#fff;border:1px solid #cad4df;border-radius:7px;box-shadow:none;padding:10px;margin:6px 0 0}
#lmc-tunnel label{font-size:14px;color:#32424d}
#lmc-tunnel .lmc-contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}
#lmc-tunnel .lmc-contact-note{background:#fff4e8;border-radius:8px;padding:12px;font-size:14px;margin:0 0 16px}
#lmc-tunnel .lmc-consent{margin-top:16px}
#lmc-tunnel .lmc-consent label{display:flex;align-items:flex-start;gap:10px;font-size:13px;line-height:1.5}
#lmc-tunnel .lmc-consent label:before,#lmc-tunnel .lmc-consent label:after{display:none}
#lmc-tunnel .lmc-consent input{margin-top:2px}
#lmc-tunnel .lmc-privacy{font-size:12px;color:#526176;margin:12px 0 0}
#lmc-tunnel a{color:#0f4c81;text-decoration:underline}
#lmc-tunnel .lmc-actions{display:flex;gap:10px;margin-top:20px;align-items:stretch}
#lmc-tunnel button{min-height:48px;border:1px solid #d6dfe7;background:#fff;color:#32424d;border-radius:8px;padding:10px 16px;font-family:inherit;font-size:16px;line-height:1.4;cursor:pointer;white-space:normal}
#lmc-tunnel #btn-next,#lmc-tunnel #btn-submit{flex:1;background:#e28c3a;color:#182e40;border-color:#e28c3a;font-weight:600}
#lmc-tunnel #btn-submit{display:none}
#lmc-tunnel button:disabled{opacity:.6;cursor:wait}
#lmc-tunnel .error-message{font-size:13px;color:#a52c26;margin:6px 0 8px}
#lmc-tunnel .is-invalid-input{border-color:#a52c26!important}
#lmc-tunnel .lmc-server-errors{color:#a52c26;border:1px solid #a52c26;border-radius:8px;padding:12px;margin-bottom:16px}
#lmc-tunnel .lmc-trust{display:flex;justify-content:center;gap:8px 14px;flex-wrap:wrap;font-size:12px;margin:16px 0;color:#526176}
#lmc-tunnel .lmc-reassure{margin-top:24px;background:#eaf5fa;border-left:4px solid #359ac9;border-radius:12px;padding:18px}
#lmc-tunnel .lmc-reassure h2{font-size:19px;margin-bottom:10px}
#lmc-tunnel .lmc-reassure p{font-size:14px;margin:0 0 12px}
#lmc-tunnel .lmc-reassure-points{display:grid;grid-template-columns:1fr 1fr;gap:16px}
#lmc-tunnel .lmc-reassure-points p{font-size:13px;margin:0}
#lmc-tunnel .lmc-reassure-points strong{display:block;margin-bottom:4px}
#lmc-tunnel .lmc-role{font-size:12px;color:#526176;margin:18px 0 0}
@media(max-width:480px){#lmc-tunnel{padding:16px 12px}#lmc-tunnel h1{font-size:23px}#lmc-tunnel #form-step{padding:16px 12px}#lmc-tunnel .lmc-choice label{padding:10px 8px;gap:6px;font-size:13px;min-height:66px}#lmc-tunnel .lmc-stages label{min-height:54px}#lmc-tunnel .lmc-field-phone,#lmc-tunnel .lmc-field-email{grid-column:1/-1}#lmc-tunnel .lmc-reassure-points{grid-template-columns:1fr}#lmc-tunnel button{padding:10px 12px}}

#lmc-tunnel .lmc-reassure-heading{display:flex;align-items:center;gap:12px;margin-bottom:12px}
#lmc-tunnel .lmc-reassure-heading h2{flex:1;min-width:0;margin:0}
#lmc-tunnel .lmc-mascot{display:block;width:82px;height:82px;object-fit:contain;flex-shrink:0}

/* Choix tactiles : compatible avec les différents wrappers radio de CakePHP. */
#lmc-tunnel .lmc-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#lmc-tunnel .lmc-choices>div{min-width:0;margin:0;padding:0}
#lmc-tunnel .lmc-choices label{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:74px;margin:0;padding:14px 10px;border:1px solid #cbdbe7;border-radius:12px;background:#f7fafc;box-shadow:0 2px 4px rgba(15,76,129,.04);color:#0f4c81;font-family:inherit;font-size:14px;font-weight:600;line-height:1.35;text-align:center;cursor:pointer;touch-action:manipulation;overflow-wrap:break-word;transition:background-color .15s,border-color .15s}
#lmc-tunnel .lmc-choices label:before,#lmc-tunnel .lmc-choices label:after{display:none!important}
#lmc-tunnel .lmc-choices label input[type=radio]{position:absolute;width:1px;height:1px;min-width:0;opacity:0;margin:0;padding:0;overflow:hidden;clip:rect(0,0,0,0)}
#lmc-tunnel .lmc-choices label:has(input:checked){background:#0f4c81;border-color:#0f4c81;color:#fff;box-shadow:0 3px 8px rgba(15,76,129,.16)}
#lmc-tunnel .lmc-choices label:focus-within{outline:3px solid #e28c3a;outline-offset:3px}
#lmc-tunnel .lmc-choices label:active{background:#eaf5fa;color:#0f4c81}
#lmc-tunnel .lmc-stages{grid-template-columns:1fr}
#lmc-tunnel .lmc-stages label{min-height:58px;justify-content:flex-start;text-align:left;padding:14px 16px}
@media(max-width:350px){#lmc-tunnel .lmc-choices{gap:8px}#lmc-tunnel .lmc-choices label{font-size:13px;padding:12px 6px}}
@media(prefers-reduced-motion:reduce){#lmc-tunnel .lmc-choices label{transition:none}}

#lmc-tunnel h1{font-weight:700}
#lmc-tunnel .lmc-role{text-align:center}
#lmc-tunnel .lmc-actions{flex-wrap:nowrap;gap:12px;margin-top:16px}
#lmc-tunnel .lmc-actions button{flex:0 0 auto;width:auto;min-height:44px;padding:9px 14px;font-size:14px;line-height:1.4;border-radius:8px}
#lmc-tunnel #btn-next{flex:0 0 auto;margin-left:auto}
#lmc-tunnel #btn-back{background:transparent;border-color:transparent;padding-left:4px}
#lmc-tunnel .lmc-actions.lmc-final{flex-direction:column;align-items:center;gap:6px;margin-top:22px}
#lmc-tunnel .lmc-final #btn-submit{order:0;flex:0 0 auto;margin:0 auto;padding:12px 24px;min-height:48px;max-width:100%;border-radius:14px;font-size:15px;box-shadow:0 3px 8px rgba(126,77,21,.14)}
#lmc-tunnel .lmc-final #btn-back{order:1;font-size:13px;padding:9px 12px}
#lmc-tunnel #lmc-final-privacy{display:none}

/* 28/09/2026 — Navigation générale masquée uniquement dans le tunnel LMC.
   Le logo, les boutons du formulaire et les autres pages sont conservés. */
body:has(> #lmc-tunnel) > .top .nav,
body:has(> #lmc-tunnel) > .top .nav-resp,
body:has(> #lmc-tunnel) > .top .top__resp {
    display: none !important;
}
