/* Cloche commune : aucun formulaire ni règle métier modifié. */
.pm-notifications[hidden],.pn-count[hidden]{display:none!important}
.pn-bell{position:relative;display:grid;place-items:center;width:44px;height:44px;border:1px solid #cdd3e7;border-radius:12px;background:white;color:#52629a;cursor:pointer;flex-shrink:0}
.pn-bell svg{width:23px;height:23px}
.pn-count{position:absolute;right:-5px;top:-5px;min-width:20px;line-height:20px;padding:0 4px;border-radius:20px;color:white;background:#b91c1c;font:700 11px/20px system-ui,sans-serif}
.pn-panel{position:fixed;inset:76px 16px auto auto;margin:0;width:400px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 100px);padding:20px;border:1px solid #cdd3e7;border-radius:16px;background:#fff;color:#1e293b;box-shadow:0 16px 50px #1e293b33;overflow-y:auto;text-align:left;font:14px/1.5 system-ui,sans-serif;overscroll-behavior:contain}
.pn-panel::backdrop{background:#0f172a33}
.pn-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.pn-heading h2{font-size:20px;font-weight:750;margin:0}.pn-close{font-size:26px}
.pn-panel button{min-height:44px;padding:8px 10px;border:1px solid #cdd3e7;border-radius:8px;color:#434f80;background:#fff;font:600 13px system-ui,sans-serif;cursor:pointer}.pn-panel button:disabled{opacity:.5;cursor:default}
.pn-panel button:focus-visible,.pn-bell:focus-visible,.pn-panel a:focus-visible,.pn-panel input:focus-visible{outline:3px solid #8e9ac6;outline-offset:2px}
.pn-help{font-size:12px;color:#64748b;margin:8px 0 12px}.pn-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:10px}.pn-controls label{display:flex;align-items:center;gap:7px;font-size:12px}.pn-volume{width:100px;min-height:44px;accent-color:#52629a}.pn-sound[aria-pressed=true]{background:#f2f4f9}.pn-read{width:100%}.pn-status{color:#475569;font-size:12px;min-height:18px;margin:8px 0}.pn-list{list-style:none;margin:0;padding:0}.pn-list li{border-top:1px solid #e2e8f0}.pn-list a{display:block;min-height:44px;padding:12px 10px;color:#1e293b;text-decoration:none;border-radius:6px}.pn-list a:hover{background:#f2f4f9}.pn-list .pn-unread{background:#f2f4f9;border-left:3px solid #52629a}.pn-list strong{display:block;font-size:14px;font-weight:600}.pn-list small{display:block;font-size:12px;color:#64748b;margin-top:4px}.pn-empty{padding:16px 0;color:#64748b}.pn-new{color:#52629a;font-weight:700}
@media(max-width:640px){.pn-panel{top:64px;right:12px;max-height:calc(100dvh - 80px);padding:16px}.pn-bell{width:40px;height:44px}}

/* Garder les quatre actions accessibles dans l’en-tête client sur téléphone. */
@media(max-width:640px){#site-header [data-pro-label]{display:none!important}#site-header [data-pro-link]{padding-left:10px;padding-right:10px}}

/* Alerte visible sans déplacer le focus ni interrompre une saisie. */
.pm-notifications{display:flex;align-items:center;gap:8px}.pn-start{max-width:170px;min-height:44px;padding:6px 10px;border:1px solid #d97706;border-radius:9px;background:#fffbeb;color:#92400e;font:600 12px/1.35 system-ui,sans-serif;cursor:pointer}.pn-start.pn-ready{border-color:#a7f3d0;background:#ecfdf5;color:#065f46}.pn-desktop{width:100%;margin-bottom:8px}
.pn-toast{position:fixed;top:90px;right:20px;z-index:10000;display:grid;grid-template-columns:1fr 44px;gap:4px 12px;width:360px;max-width:calc(100vw - 24px);box-sizing:border-box;padding:14px 12px 14px 18px;border:1px solid #cdd3e7;border-left:5px solid #52629a;border-radius:14px;background:#fff;color:#172033;box-shadow:0 8px 30px #0f172a33;font:14px/1.5 system-ui,sans-serif;text-align:left}.pn-toast[hidden]{display:none!important}.pn-toast strong{grid-column:1;font-weight:700;overflow-wrap:anywhere}.pn-toast a{grid-column:1;min-height:44px;display:flex;align-items:center;color:#52629a;font-weight:600;text-decoration:underline}.pn-toast button{grid-column:2;grid-row:1/3;align-self:start;min-width:44px;min-height:44px;border:0;border-radius:8px;background:#f1f5f9;color:#334155;cursor:pointer;font-size:24px}.pn-toast a:focus-visible,.pn-toast button:focus-visible,.pn-start:focus-visible{outline:3px solid #8e9ac6;outline-offset:2px}
@media(max-width:640px){.pm-notifications{gap:4px}.pn-start{max-width:105px;padding:5px;font-size:11px}.pn-toast{right:12px;top:74px}}

.pn-mobile-start{display:none!important}
@media(max-width:640px){.pn-start{display:none}.pn-mobile-start:not([hidden]){position:fixed;bottom:84px;left:12px;z-index:60;display:block!important;max-width:calc(100vw - 24px);min-height:44px;padding:8px 12px;border:1px solid #d97706;border-radius:9px;background:#fffbeb;color:#92400e;font:600 12px/1.4 system-ui,sans-serif;cursor:pointer}.pn-mobile-start.pn-ready{border-color:#a7f3d0;background:#ecfdf5;color:#065f46}.pn-mobile-start:focus-visible{outline:3px solid #8e9ac6;outline-offset:2px}}

.pn-panel .pn-push{width:100%;margin-bottom:6px}.pn-push-info{font-size:12px;color:#475569;margin:0 0 12px;line-height:1.5}

.pn-settings{margin-top:16px;border-top:1px solid #e2e8f0;padding-top:8px}.pn-settings summary{cursor:pointer;min-height:44px;display:list-item;align-content:center;color:#52629a;font-weight:600;font-size:14px}.pn-settings summary:focus-visible{outline:3px solid #8e9ac6;outline-offset:2px}.pn-settings .pn-start{display:block;max-width:none;width:100%;margin-bottom:10px}.pn-read{margin-top:12px}

.pn-heading h2{flex:1}.pn-settings-toggle{width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.pn-settings-toggle svg{width:22px;height:22px}.pn-settings-toggle[aria-expanded=true]{background:#f2f4f9}.pn-settings>summary{display:none}

.pn-heading{position:sticky;top:0;z-index:3;background:#fff;padding-bottom:8px}.pn-settings:not([open]){display:none}.pn-settings[open]{position:absolute;top:52px;right:0;z-index:4;width:320px;max-width:calc(100vw - 68px);max-height:calc(100dvh - 200px);overflow-y:auto;box-sizing:border-box;margin:0;padding:14px;border:1px solid #cdd3e7;border-radius:12px;background:#fff;box-shadow:0 10px 28px #0f172a26}.pn-settings .pn-help{margin-top:0}

.pn-start[hidden]{display:none!important}

/* Le titre ne fait pas partie de la zone défilante. */
.pn-panel[open]{display:flex;flex-direction:column;height:min(640px,calc(100dvh - 100px));overflow:visible;box-sizing:border-box}
.pn-panel .pn-heading{position:relative;top:auto;flex-shrink:0}
.pn-panel .pn-status{flex-shrink:0}
.pn-panel .pn-status:empty{display:none}
.pn-panel .pn-list{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;scroll-padding:8px}
.pn-panel .pn-read{flex-shrink:0}
.pn-panel .pn-list:focus-visible{outline:2px solid #8e9ac6;outline-offset:2px}
@media(max-width:640px){.pn-panel[open]{height:min(640px,calc(100dvh - 80px))}}

.pn-actions{flex-shrink:0;display:grid;gap:6px;margin-top:10px}.pn-actions .pn-read{margin-top:0}.pn-delete-all{width:100%}.pn-list li:not(.pn-empty){display:grid;grid-template-columns:minmax(0,1fr) 44px;align-items:start}.pn-panel .pn-dismiss{width:44px;border:0;padding:10px;color:#64748b;background:transparent}.pn-dismiss svg{width:20px;height:20px}.pn-list strong,.pn-list small{overflow-wrap:anywhere}
