html.pd-session-pending { background:#f3f7f6; }
html.pd-session-pending body * { visibility:hidden !important; }
html.pd-session-pending::after { content:'Pharmea · Ouverture de votre espace…'; position:fixed; inset:0; display:grid; place-items:center; color:#166658; font:500 18px system-ui,sans-serif; background:#f3f7f6; z-index:2147483646; }
html.pd-session-pending.pd-session-retry::after { display:none; }
html.pd-session-pending body > #pd-session-status { visibility:visible !important; position:fixed; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:16px; padding:24px; text-align:center; background:#f3f7f6; color:#166658; font:16px system-ui,sans-serif; z-index:2147483647; }
#pd-session-status strong { font-size:24px; }
#pd-session-status button { padding:12px 24px; background:#166658; color:white; border:0; border-radius:10px; cursor:pointer; font:inherit; }

html.pd-session-pending #pd-session-status * { visibility:visible !important; }

html.pd-session-pending.pd-session-visual::after {display:none}
html.pd-session-pending #pd-session-loading,html.pd-session-pending #pd-session-loading * {visibility:visible!important}
#pd-session-loading {position:fixed;inset:0;z-index:2147483646;display:grid;place-items:center;padding:24px;background:radial-gradient(ellipse at top,#e7f5f3,#f5f7fb 65%);font-family:system-ui,sans-serif;color:#153e49}
.pd-loading-card {width:min(360px,85vw);text-align:center;padding:36px 28px;background:white;border-radius:24px;box-shadow:0 16px 55px #173f4b12}
.pd-loading-card strong {font-size:32px;letter-spacing:-1px;color:#146958}
.pd-loading-card p {font-size:17px;margin:16px 0 24px}
.pd-loading-card small {display:block;font-size:12px;color:#597478;line-height:1.6;margin-top:18px}
.pd-loading-track {height:7px;border-radius:12px;background:#e7eeef;overflow:hidden}
.pd-loading-track span {display:block;width:40%;height:100%;border-radius:12px;background:linear-gradient(90deg,#177d6c,#38c6be);animation:pd-loading-v2 1.7s ease-in-out infinite}
@keyframes pd-loading-v2 {0%{transform:translateX(-110%)}100%{transform:translateX(350%)}}
@media(prefers-reduced-motion:reduce){.pd-loading-track span{animation:none;width:65%;opacity:.8}}
