/* Deux ajouts autonomes ; les styles du parcours et des fiches restent inchangés. */
.visitor-notice-open{overflow:hidden}
.visitor-notice{width:min(560px,calc(100vw - 32px));max-height:calc(100dvh - 40px);padding:28px;border:1px solid #dce4ed;border-radius:17px;background:#fff;color:var(--ink);box-shadow:0 20px 80px #10243b55;overflow-y:auto}
.visitor-notice::backdrop{background:#10243b9e;backdrop-filter:blur(3px)}
.visitor-notice-heading{display:flex;align-items:center;gap:14px;margin-bottom:21px}
.visitor-mark{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border-radius:11px;background:#e9f5f0;color:#087d6a;font-size:.9rem;font-weight:750;letter-spacing:1px}
.visitor-notice .eyebrow{margin:0 0 5px;font-size:.68rem}
.visitor-notice h2{margin:0;font-size:1.4rem;line-height:1.2;letter-spacing:-.4px}
.visitor-notice-copy{font-size:.9rem;line-height:1.65;color:#445b71}
.visitor-notice-copy p{margin:0 0 14px}
.visitor-notice-copy p:nth-child(2){font-weight:600;color:#263e55}
.visitor-notice-actions{display:flex;justify-content:space-between;align-items:center;gap:22px;padding-top:8px}
.visitor-notice-actions p{font-size:.7rem;color:#6b7f91;line-height:1.45;margin:0;max-width:230px}
.visitor-primary{border:1px solid #087d6a;background:#087d6a;color:white;border-radius:8px;padding:10px 17px;min-height:44px;font-size:.875rem;font-weight:650;white-space:nowrap}
.visitor-primary:hover:not(:disabled){background:#076755}
.visitor-primary:disabled{opacity:.65;cursor:wait}
.visitor-feedback{position:fixed;z-index:40;right:max(18px,env(safe-area-inset-right));bottom:max(18px,env(safe-area-inset-bottom));width:256px;max-width:calc(100vw - 32px);border:1px solid #d9e3eb;border-radius:13px;background:#fff;box-shadow:0 5px 24px #10243b22;overflow:hidden}
.visitor-feedback-heading{width:100%;min-height:44px;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;padding:10px 15px;background:#f5f9f7;border:0;color:#1b4e43;font-size:.8125rem;font-weight:650}
#visitor-feedback-sign{font-size:1.1rem;font-weight:400;color:#668e81}
.visitor-feedback-body{padding:8px 14px 12px;max-height:calc(100dvh - 130px);overflow-y:auto;overscroll-behavior:contain}
.visitor-feedback-body[hidden]{display:none}
.visitor-feedback.is-collapsed{width:153px}
.visitor-stars{display:flex;align-items:center;justify-content:space-between;margin:0 -2px}
.visitor-stars button{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border:0;background:none;color:#7d8fa3;border-radius:7px;font-size:1.85rem;line-height:1;cursor:pointer;padding:0}
.visitor-stars button.is-lit{color:#b77910}
.visitor-stars button:hover:not(:disabled){background:#fff7e7}
.visitor-stars button:disabled{cursor:default;opacity:1}
.visitor-status{font-size:.75rem;line-height:1.45;color:#617589;margin:2px 0 6px;min-height:1.1em}
.visitor-status.is-error{color:#a02c3e}
.visitor-status:empty{display:none}
.visitor-suggestion{border-top:1px solid #e6edf2;margin-top:10px;padding-top:4px}
.visitor-suggestion>summary{cursor:pointer;color:#206b5b;font-size:.8125rem;min-height:36px;padding:7px 0;list-style:none}
.visitor-suggestion>summary::-webkit-details-marker{display:none}
.visitor-suggestion>summary::after{content:'+';float:right;color:#6b8b80}
.visitor-suggestion[open]>summary::after{content:'−'}
.visitor-suggestion form label{display:block;font-size:.75rem;color:#50677b;margin:6px 0}
.visitor-suggestion textarea{display:block;width:100%;min-height:85px;max-height:180px;resize:vertical;padding:9px 10px;border:1px solid #cbd8e2;border-radius:7px;background:#fcfdfe;color:var(--ink);font:inherit;font-size:.8125rem;line-height:1.5}
.visitor-suggestion textarea:read-only{background:#f1f5f8}
.visitor-suggestion .visitor-primary{width:100%;margin:1px 0 6px;font-size:.8125rem;min-height:40px;padding:8px 14px}
.visitor-privacy{font-size:.67rem;color:#6c7f90;line-height:1.4;margin:8px 0}
.visitor-honeypot{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;pointer-events:none;opacity:0}
.visitor-sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
body>footer{padding-bottom:210px}
@media(max-width:760px){.visitor-feedback{right:max(12px,env(safe-area-inset-right));bottom:max(12px,env(safe-area-inset-bottom));width:248px}.visitor-notice{padding:22px;max-height:calc(100dvh - 24px)}.visitor-notice h2{font-size:1.25rem}.visitor-notice-actions{gap:14px}.visitor-notice-actions p{font-size:.66rem}.visitor-notice-copy{font-size:.85rem}.visitor-suggestion textarea{font-size:1rem}}
@media(max-width:390px){.visitor-notice-actions{flex-direction:column-reverse;align-items:stretch;gap:12px}.visitor-notice-actions p{max-width:none;text-align:center}}
@media print{.visitor-notice,.visitor-feedback{display:none!important}body>footer{padding-bottom:0}}
