/* SignalNids IA V1.0.0 — isolation visuelle, mobile/PWA, sans bibliothèque supplémentaire. */
.snai-entry{--ai-ink:#0b3028;--ai-green:#00513e;--ai-gold:#f1c550;background:#f1f7f4;border:1px solid #b8d2c7;border-top:5px solid var(--ai-green);padding:26px;margin:0 0 24px;color:var(--ai-ink);scroll-margin-top:120px}
.snai-entry-top{display:flex;gap:16px;justify-content:space-between;align-items:center;flex-wrap:wrap}.snai-kicker{display:flex;align-items:center;gap:9px;font-size:12px;font-weight:850;letter-spacing:.1em}.snai-kicker svg{width:21px;height:21px}.snai-kicker small{background:#00513e;color:#fff;padding:3px 6px;font-size:10px;letter-spacing:.06em}.snai-network{font-size:12px;color:#35584c}.snai-network.is-offline{color:#9a3412;font-weight:700}
.snai-entry h2{font-size:clamp(25px,3.5vw,36px);line-height:1.2;margin:18px 0 12px;letter-spacing:-.035em;color:#0b3028}.snai-entry h2 span{font-weight:500}.snai-entry>p{max-width:850px;line-height:1.6;margin:10px 0}.snai-entry-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:20px}.snai-entry .snai-footnote{font-size:12px;color:#496659;margin-top:14px}
.snai-button,.snai-link,.snai-back,.snai-quick button,.snai-step-button{font-family:inherit!important;cursor:pointer;min-height:46px;border-radius:0!important;font-size:15px!important;font-weight:700;line-height:1.3;touch-action:manipulation}
.snai-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid #00513e!important;background:#00513e!important;color:#fff!important;padding:12px 18px!important;text-decoration:none!important}.snai-button svg{height:20px;width:20px}.snai-button:hover{background:#07392e!important}.snai-link{background:transparent!important;border:0!important;color:#145140!important;padding:8px 10px!important;text-decoration:underline;text-underline-offset:4px}.snai-back{background:#fff!important;border:1px solid #aebfb7!important;color:#183d31!important;padding:12px 18px!important}.snai-button:disabled,.snai-step-button:disabled{opacity:.55;cursor:not-allowed}.snai-button:focus-visible,.snai-link:focus-visible,.snai-back:focus-visible,.snai-quick button:focus-visible,.snai-step-button:focus-visible{outline:3px solid #c18309;outline-offset:3px}
#reportForm.snai-active{padding:24px;background:#fff;overflow:visible}.snai-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;padding:0;margin:0 0 25px;list-style:none}.snai-step-button{display:flex;flex-direction:column;align-items:flex-start;gap:8px;width:100%;border:0;border-top:3px solid #dae7e0;padding:10px 8px;background:#f4f7f5;color:#36574b;text-align:left;font-size:12px!important}.snai-step-button b{display:grid;place-items:center;width:23px;height:23px;background:#dce9e2;color:#173d31;font-size:12px}.snai-step-button[aria-current="step"]{border-color:#00513e;background:#e8f3ee;color:#003c2b}.snai-step-button[aria-current="step"] b{background:#00513e;color:#fff}.snai-step-button.is-done{border-color:#86ae99}
.snai-step{scroll-margin-top:110px}.snai-step[hidden],.snai-chat [hidden],.snai-active [data-snai-hidden],#snai-entry [hidden],.snai-status[hidden],.snai-toolbar[hidden],.snai-review[hidden],.snai-progress[hidden]{display:none!important}
.snai-step-title{font-size:25px;line-height:1.25;margin:0 0 10px!important;color:#0c3426;outline:0}.snai-step-intro{margin:0 0 22px!important;font-size:15px;line-height:1.5;color:#506b5f}.snai-active .sn-v2-mode{padding:18px;margin:0 0 22px;border-top:0;background:#f4f8f6;color:#173b2f;box-shadow:none}.snai-active .sn-v2-mode .eyebrow{color:#58766a}.snai-active .sn-v2-mode h2,.snai-active .sn-v2-mode p{display:none}.snai-active .sn-v2-mode-grid{margin-top:12px;gap:10px}.snai-active .sn-v2-mode-btn{min-height:100px;background:#fff;border:1px solid #b9cfc3;color:#153c2f}.snai-active .sn-v2-mode-btn strong{color:#153c2f}.snai-active .sn-v2-mode-btn small{color:#536c60}.snai-active .sn-v2-mode-btn:has(input:checked){background:#e4f3ea;border-color:#00513e;box-shadow:inset 0 0 0 1px #00513e}.snai-active .sn-v2-mode-btn:focus-within{outline:3px solid #c18309;outline-offset:2px}.snai-active .sn-v2-mode-icon{font-size:24px;background:#f1f5f1}
.snai-discovery{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(250px,.85fr);gap:22px;align-items:start}.snai-chat{min-width:0;border:1px solid #ccddd4;padding:18px;background:#fff}.snai-chat-heading{display:flex;gap:12px;align-items:center;padding-bottom:14px;border-bottom:1px solid #e1eae5;margin-bottom:16px}.snai-chat-heading strong{display:block;color:#0d3b2c}.snai-chat-heading small{display:block;color:#677c70;font-size:12px;margin-top:4px;line-height:1.4}.snai-avatar{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;background:#00513e;color:#fff}.snai-avatar svg{width:23px;height:23px}.snai-messages{max-height:400px;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;display:flex;flex-direction:column;gap:12px;padding:2px 0 12px;margin-bottom:12px}.snai-bubble{max-width:96%;padding:13px 14px;background:#eff6f1;border-left:3px solid #71a289;color:#183b2c;white-space:pre-wrap;overflow-wrap:anywhere;font-size:15px;line-height:1.6}.snai-bubble.is-user{align-self:flex-end;background:#f6f4ed;border-left:0;border-right:3px solid #d4ba73;color:#4d442a}.snai-bubble small{display:block;font-size:10px;letter-spacing:.09em;font-weight:800;margin-bottom:5px;text-transform:uppercase}.snai-quick{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 13px}.snai-quick button{font-size:13px!important;color:#07553d;border:1px solid #96bcaa;background:#fff;padding:8px 11px}.snai-quick button:hover{background:#edf5f0}.snai-quick button:disabled{opacity:.5;cursor:wait}
.snai-input-label{display:block!important;font-size:14px!important;font-weight:700!important;margin:0 0 7px!important;color:#183d2b}#snai-message{width:100%;resize:vertical;min-height:100px;font:16px/1.5 inherit;line-height:1.5;padding:13px;border:1px solid #a8c1b3;background:#fff;color:#153b2e;border-radius:0}.snai-active input,.snai-active select,.snai-active textarea{font-size:16px!important}#snai-message:focus{outline:2px solid #076544;outline-offset:2px}.snai-help{font-size:12px!important;line-height:1.6!important;color:#566f61!important;margin:8px 0!important}.snai-consent{display:flex!important;align-items:flex-start!important;gap:10px;font-size:12px!important;font-weight:400!important;line-height:1.5!important;margin:13px 0!important;color:#354e41}.snai-consent input{flex:0 0 19px;width:19px!important;height:19px;min-height:19px;margin:2px 0 0!important;accent-color:#00513e}.snai-consent a{color:#07553d;text-decoration:underline}.snai-send-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0}.snai-status{padding:12px 14px;background:#f2f6f3;border-left:3px solid #00513e;font-size:13px;line-height:1.55;margin:12px 0}.snai-status.is-error{border-color:#b45309;background:#fff7e6;color:#7a3a0b}.snai-status.is-pending{animation:snai-breathe 1.6s ease-in-out infinite}.snai-visual{background:#fff9e9;border:1px solid #e1ce98;padding:13px;font-size:13px;line-height:1.6;margin:15px 0;color:#4d4126}.snai-visual strong{font-size:12px}.snai-visual p{margin:7px 0 0}.snai-active .sn-v2-media-block{margin:0;padding:18px;border:1px solid #d2e0d7;background:#f8faf8}.snai-active .sn-v2-media-block input[type=file]{width:100%;max-width:100%;padding:9px;font-size:13px!important}.snai-active #photo-previews{display:flex;gap:8px;flex-wrap:wrap}.snai-active #photo-previews img{max-width:120px;height:100px;object-fit:cover}.snai-media-heading{margin:0 0 14px;font-size:18px;line-height:1.35}.snai-applied{background:#eff8f2;border-left:4px solid #0b7f55;padding:13px;margin-bottom:18px;font-size:14px;line-height:1.6}.snai-active [data-snai-suggested]{outline:2px dashed #b89329;outline-offset:2px}
.snai-active fieldset{margin:0;border:0;padding:0}.snai-active fieldset>legend{display:none}.snai-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:24px;padding-top:18px;border-top:1px solid #dbe6df}.snai-toolbar .snai-button{margin-left:auto}.snai-loc-check{display:flex!important;align-items:flex-start;gap:10px;padding:14px;border:1px solid #acc8b5;background:#eff7f0;margin:20px 0!important;font-size:14px!important;line-height:1.55!important}.snai-loc-check input{width:20px!important;height:20px;flex:0 0 20px;min-height:20px;margin:3px 0!important;accent-color:#00513e}
.snai-review-box{background:#f6f9f7;border:1px solid #c9dcd0;padding:20px;margin:18px 0}.snai-review-box h3{color:#0d3c2a;margin:0 0 16px;font-size:19px}.snai-review-data{margin:0}.snai-review-row{display:grid;grid-template-columns:minmax(135px,.6fr) minmax(0,1fr);gap:15px;padding:12px 0;border-bottom:1px solid #dae5dd}.snai-review-row:last-child{border-bottom:0}.snai-review-row dt{font-weight:600;font-size:13px;color:#4a6856}.snai-review-row dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere;font-size:14px;color:#183924}.snai-review-note{background:#fff8e3;color:#6c4e0b;padding:14px;border-left:3px solid #d1ab37;font-size:14px;line-height:1.6}.snai-active .snai-review-confirm{font-size:15px!important;line-height:1.5!important}.snai-active .snai-review-confirm input{accent-color:#00513e}.snai-active button[type=submit]{background:#00513e!important;color:#fff!important;border:1px solid #00513e!important;min-height:54px;border-radius:0;margin-top:15px}.snai-active~.report-aside{display:none}.snai-active .sn-v2-pressure-fields[hidden],.snai-active .sn-v2-nest-fields[hidden]{display:none!important}
@keyframes snai-breathe{50%{opacity:.65}}@media(prefers-reduced-motion:reduce){.snai-status.is-pending{animation:none}*{scroll-behavior:auto!important}}
@media(max-width:760px){.snai-entry{margin:0 0 18px;padding:19px 15px;border-left:0;border-right:0}.snai-entry h2{font-size:27px;line-height:1.24}.snai-entry-top{gap:8px}.snai-network{font-size:11px}.snai-entry-actions{align-items:stretch}.snai-entry-actions>*{width:100%}.snai-entry>p{font-size:14px}.snai-discovery{grid-template-columns:minmax(0,1fr);gap:16px}.snai-chat{padding:14px}.snai-active .sn-v2-mode{margin:0 0 16px;padding:13px}.snai-active .sn-v2-mode-grid{grid-template-columns:1fr}.snai-active .sn-v2-mode-btn{min-height:85px;padding:12px;grid-template-columns:42px 1fr}.snai-active .sn-v2-mode-icon{width:36px;height:36px}.snai-step-title{font-size:23px}.snai-progress{gap:4px;margin:0 0 20px}.snai-step-button{font-size:10px!important;padding:8px 4px;min-height:69px;gap:5px}.snai-step-button b{width:21px;height:21px}.snai-step-intro{font-size:14px}.snai-messages{max-height:340px}.snai-review-box{padding:15px}.snai-review-row{grid-template-columns:1fr;gap:5px}.snai-toolbar{gap:8px}.snai-toolbar>button{padding:12px!important;font-size:14px!important}.snai-active .sn-v2-media-block{padding:14px}.snai-send-row .snai-button{width:100%}.snai-active{padding-bottom:calc(28px + env(safe-area-inset-bottom))!important}.snai-step,.snai-entry{scroll-margin-top:calc(var(--sn-header-h,70px) + 25px)}}

/* En mode guidé, supprimer les introductions répétées pour accéder rapidement à la saisie. */
html[data-snai-active="1"] .report-intro{display:none!important}
.snai-entry.is-active{padding:18px 22px;margin-bottom:16px}
.snai-entry.is-active h2{font-size:27px;margin:12px 0 0}
.snai-entry.is-active h2 br,.snai-entry.is-active h2 span,.snai-entry.is-active>p{display:none}
.snai-entry.is-active .snai-entry-actions{margin-top:5px}
.snai-entry.is-active .snai-link{font-size:12px!important;min-height:36px;padding-left:0!important;text-align:left}
#reportForm.snai-active .sn-v2-mode .sn-v2-pressure-note{display:none!important}
.snai-consent{font-size:13px!important}
@media(max-width:760px){.snai-entry.is-active{padding:16px 14px}.snai-entry.is-active h2{font-size:24px}.snai-entry.is-active .snai-entry-actions>*{width:auto}.snai-entry.is-active .snai-link{font-size:12px!important}.snai-step-intro{margin-bottom:14px!important}}

/* Les attributs hidden doivent également primer après retour au formulaire classique. */
.snai-loc-check[hidden],.snai-media-heading[hidden]{display:none!important}
/* Largeur du parcours cohérente avec son en-tête, sans changer le formulaire classique. */
#reportForm.snai-active{width:100%;max-width:none}
html[data-snai-active="1"] #reportForm.snai-active .sn-v2-mode .sn-v2-pressure-note{display:none!important}
html[data-snai-active="1"] .report-layout{grid-template-columns:minmax(0,1fr)}
