.pcp-page{--forest:#23443a;--forest-deep:#17372e;--forest-soft:#315c4c;--sage:#91a78f;--sage-soft:#dfe7dd;--ivory:#f7f3ea;--paper:#fffdf8;--clay:#c99e83;--ink:#26322e;--muted:#66726d;--danger:#9b4c46;--danger-soft:#f6e8e5;--line:rgba(35,68,58,.14);--shadow:0 22px 60px rgba(38,50,46,.10);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding:24px 0 54px}.pcp-page *{box-sizing:border-box}.pcp-page input,.pcp-page button,.pcp-page select{font:inherit}.pcp-shell{background:linear-gradient(145deg,var(--paper),var(--ivory));border:1px solid var(--line);border-radius:30px;box-shadow:var(--shadow);margin:0 auto;max-width:1180px;overflow:hidden;width:min(1180px,calc(100% - 24px))}.pcp-topbar{align-items:center;background:rgba(255,253,248,.92);border-bottom:1px solid var(--line);display:flex;gap:20px;justify-content:space-between;min-height:78px;padding:14px 24px}.pcp-brand{align-items:center;display:flex;gap:12px}.pcp-brand strong{display:block;font:500 1.22rem Georgia,"Times New Roman",serif}.pcp-brand small{color:var(--muted);display:block;font-size:.65rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.pcp-brand-mark{border:1px solid var(--forest);border-radius:50%;display:block;height:42px;position:relative;width:42px}.pcp-brand-mark:before,.pcp-brand-mark:after{border:1px solid var(--sage);border-radius:70% 20% 70% 20%;content:"";height:22px;left:14px;position:absolute;top:9px;transform:rotate(32deg);width:12px}.pcp-brand-mark:after{transform:rotate(-32deg)}.pcp-preview-tools{align-items:center;display:flex;gap:12px}.pcp-preview-badge{background:#fff2cd;border-radius:999px;color:#785b20;font-size:.69rem;font-weight:800;letter-spacing:.07em;padding:8px 11px;text-transform:uppercase}.pcp-customer-picker{align-items:center;display:flex;gap:8px}.pcp-customer-picker label{color:var(--muted);font-size:.75rem;font-weight:700}.pcp-customer-picker select{background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--ink);max-width:300px;padding:8px 10px}.pcp-layout{display:grid;grid-template-columns:245px 1fr;min-height:680px}.pcp-sidebar{background:rgba(223,231,221,.34);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:28px 18px}.pcp-user{align-items:center;display:flex;gap:11px;padding:0 8px 26px}.pcp-user strong,.pcp-user small{display:block}.pcp-user small{color:var(--muted);font-size:.72rem;margin-top:2px;max-width:145px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pcp-avatar{align-items:center;background:var(--forest);border-radius:50%;color:#fff;display:flex;font-size:.78rem;font-weight:800;height:42px;justify-content:center;width:42px}.pcp-nav{display:grid;gap:7px}.pcp-nav a{align-items:center;border-radius:12px;color:var(--forest-deep);display:flex;font-weight:700;gap:10px;padding:11px 12px;text-decoration:none}.pcp-nav a:hover,.pcp-nav a.is-active{background:#fff;box-shadow:0 6px 20px rgba(35,68,58,.07)}.pcp-sidebar-note{border-top:1px solid var(--line);color:var(--muted);font-size:.77rem;margin-top:auto;padding:22px 8px 0}.pcp-sidebar-note strong{color:var(--forest-deep)}.pcp-sidebar-note p{margin:6px 0 0}.pcp-content{padding:44px}.pcp-heading{margin-bottom:28px}.pcp-eyebrow{color:var(--forest-soft);font-size:.72rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.pcp-heading h1,.pcp-section h2{font-family:Georgia,"Times New Roman",serif;font-weight:500;letter-spacing:-.025em}.pcp-heading h1{font-size:clamp(2.3rem,5vw,4rem);line-height:1;margin:10px 0 12px}.pcp-heading p{color:var(--muted);font-size:1rem;margin:0}.pcp-stats{align-items:stretch;display:grid;gap:12px;grid-template-columns:130px 130px 130px 1fr;margin-bottom:42px}.pcp-stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:15px 17px}.pcp-stat span{color:var(--muted);display:block;font-size:.75rem;font-weight:700}.pcp-stat strong{display:block;font:500 2rem Georgia,"Times New Roman",serif;margin-top:2px}.pcp-primary,.pcp-secondary{align-items:center;border-radius:14px;display:inline-flex;font-weight:800;justify-content:center;min-height:46px;padding:0 18px;text-decoration:none}.pcp-primary{align-self:center;background:var(--forest);color:#fff!important;justify-self:end}.pcp-primary:hover{background:var(--forest-deep)}.pcp-secondary{background:#fff;border:1px solid var(--line);color:var(--forest-deep)!important}.pcp-inline-button{margin-top:16px}.pcp-section{margin-top:34px}.pcp-section-head{align-items:end;display:flex;justify-content:space-between;margin-bottom:14px}.pcp-section h2{font-size:1.72rem;margin:5px 0 0}.pcp-cards{display:grid;gap:12px}.pcp-card{align-items:stretch;background:#fff;border:1px solid var(--line);border-radius:18px;display:grid;gap:16px;grid-template-columns:72px 1fr;padding:16px}.pcp-card.is-past{background:rgba(255,255,255,.68)}.pcp-datebox{align-items:center;background:var(--sage-soft);border-radius:14px;color:var(--forest-deep);display:flex;flex-direction:column;justify-content:center;min-height:76px}.pcp-datebox strong{font:500 1.9rem Georgia,"Times New Roman",serif;line-height:1}.pcp-datebox span{font-size:.7rem;font-weight:800;margin-top:4px;text-transform:uppercase}.pcp-card-title-row{align-items:flex-start;display:flex;gap:14px;justify-content:space-between}.pcp-time{color:var(--forest-soft);font-size:.77rem;font-weight:800}.pcp-card h3{font:500 1.28rem Georgia,"Times New Roman",serif;margin:2px 0 8px}.pcp-status{border-radius:999px;font-size:.68rem;font-weight:800;padding:6px 9px;white-space:nowrap}.pcp-status-approved{background:#e1eee2;color:#2e6540}.pcp-status-pending,.pcp-status-waiting{background:#fff2cd;color:#785b20}.pcp-status-canceled,.pcp-status-rejected,.pcp-status-no-show{background:#f7e4e1;color:#914a44}.pcp-meta{color:var(--muted);display:flex;flex-wrap:wrap;font-size:.8rem;gap:8px 16px}.pcp-address{color:var(--muted);font-size:.79rem;margin:9px 0 0}.pcp-card-actions{align-items:center;border-top:1px solid var(--line);display:flex;gap:9px;margin-top:14px;padding-top:12px}.pcp-card-actions a{border:1px solid var(--line);border-radius:9px;color:var(--forest-deep);font-size:.75rem;font-weight:750;padding:7px 10px;text-decoration:none}.pcp-card-actions a.is-danger{color:var(--danger)}.pcp-card-actions span{color:var(--muted);font-size:.68rem;margin-left:auto}.pcp-empty{background:rgba(255,255,255,.62);border:1px dashed var(--line);border-radius:18px;padding:24px}.pcp-empty p{color:var(--muted);margin:5px 0 0}.pcp-profile-card,.pcp-profile-form,.pcp-security-form,.pcp-action-preview{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden}.pcp-profile-row{align-items:center;border-bottom:1px solid var(--line);display:grid;gap:20px;grid-template-columns:180px 1fr;padding:17px 20px}.pcp-profile-row span{color:var(--muted);font-size:.82rem}.pcp-profile-row strong{font-size:.95rem}.pcp-readonly-note{background:var(--sage-soft);color:var(--forest-deep);font-size:.8rem;padding:16px 20px}.pcp-form-grid{display:grid;gap:18px;grid-template-columns:1fr 1fr;padding:24px}.pcp-form-grid label,.pcp-security-form label{color:var(--muted);font-size:.76rem;font-weight:750}.pcp-form-grid input,.pcp-security-form input{background:#fff;border:1px solid var(--line);border-radius:11px;color:var(--ink);display:block;margin-top:7px;padding:12px;width:100%}.pcp-form-grid input:disabled{background:#f4f3ef;color:#777}.pcp-form-grid small{display:block;font-size:.7rem;font-weight:500;line-height:1.4;margin-top:6px}.pcp-form-wide{grid-column:1/-1}.pcp-form-actions{border-top:1px solid var(--line);display:flex;justify-content:flex-end;padding:16px 24px}.pcp-form-actions button,.pcp-security-form button{background:var(--forest);border:0;border-radius:11px;color:#fff;cursor:pointer;font-weight:800;min-height:44px;padding:0 18px}.pcp-security-form{display:grid;gap:16px;max-width:620px;padding:24px}.pcp-security-form button{justify-self:start}.pcp-action-preview{padding:24px}.pcp-action-summary{display:flex;flex-direction:column;gap:4px;margin-bottom:18px}.pcp-action-summary strong{font:500 1.4rem Georgia,"Times New Roman",serif}.pcp-action-summary span{color:var(--muted)}.pcp-prep-box{background:var(--sage-soft);border-radius:14px;color:var(--forest-deep);margin:18px 0;padding:16px}.pcp-prep-box p{margin:5px 0 0}.pcp-notice{border-radius:14px;margin:0 0 18px;padding:14px 16px}.pcp-notice strong{display:block}.pcp-notice p{margin:3px 0 0}.pcp-notice-success{background:#e1eee2;color:#2e6540}.pcp-notice-error{background:var(--danger-soft);color:var(--danger)}.pcp-login-shell,.pcp-message{min-height:520px;padding:34px}.pcp-login-grid{display:grid;gap:28px;grid-template-columns:1.15fr .85fr;margin:78px auto 48px;max-width:940px}.pcp-login-card h1,.pcp-message h1{font:500 clamp(2.3rem,5vw,4rem)/1 Georgia,"Times New Roman",serif;margin:12px 0 16px}.pcp-login-card p,.pcp-message p{color:var(--muted);font-size:1.02rem}.pcp-access-card{background:rgba(223,231,221,.42);border:1px solid var(--line);border-radius:22px;padding:26px}.pcp-access-card h2{font:500 1.8rem Georgia,"Times New Roman",serif;margin:8px 0}.pcp-access-card p,.pcp-access-card small{color:var(--muted)}.pcp-login-form,.pcp-access-form{display:grid;gap:14px;margin-top:28px}.pcp-login-form{grid-template-columns:1fr 1fr}.pcp-login-form label,.pcp-access-form label{color:var(--muted);font-size:.75rem;font-weight:700}.pcp-login-form input[type=text],.pcp-login-form input[type=password],.pcp-access-form input[type=email]{background:#fff;border:1px solid var(--line);border-radius:12px;color:var(--ink);display:block;margin-top:6px;padding:12px;width:100%}.pcp-login-form button,.pcp-access-form button{background:var(--forest);border:0;border-radius:12px;color:#fff;cursor:pointer;font-weight:800;height:46px}.pcp-login-form button{grid-column:2}.pcp-password-form button{grid-column:1/-1}.pcp-login-form button:hover,.pcp-access-form button:hover{background:var(--forest-deep)}.pcp-remember{align-items:center;display:flex!important;gap:8px}.pcp-remember input{margin:0}.pcp-login-error{background:#f7e4e1;border-radius:12px;color:#914a44;font-size:.86rem;font-weight:700;margin-top:20px;padding:12px 14px}.pcp-login-success{background:#e1eee2;border-radius:12px;color:#2e6540;font-size:.86rem;font-weight:700;margin-top:18px;padding:12px 14px}.pcp-connected{color:var(--forest-soft);font-size:.78rem;font-weight:750}.pcp-logout{border:1px solid var(--line);border-radius:10px;color:var(--forest-deep)!important;font-size:.78rem;font-weight:750;padding:8px 10px;text-decoration:none}.pcp-logout:hover{background:#fff}
@media(max-width:860px){.pcp-preview-badge{display:none}.pcp-topbar{align-items:flex-start;flex-direction:column}.pcp-preview-tools,.pcp-customer-picker{width:100%}.pcp-customer-picker select{flex:1;max-width:none}.pcp-layout{grid-template-columns:1fr}.pcp-sidebar{border-bottom:1px solid var(--line);border-right:0;padding:16px}.pcp-user,.pcp-sidebar-note{display:none}.pcp-nav{grid-template-columns:1fr 1fr 1fr}.pcp-content{padding:28px 20px}.pcp-stats{grid-template-columns:1fr 1fr}.pcp-primary{grid-column:1/-1;justify-self:stretch}.pcp-card{grid-template-columns:62px 1fr}.pcp-card-title-row{gap:8px}.pcp-card-actions{align-items:flex-start;flex-wrap:wrap}.pcp-card-actions span{margin-left:0;width:100%}.pcp-profile-row{grid-template-columns:1fr}.pcp-form-grid{grid-template-columns:1fr}.pcp-form-wide{grid-column:1}.pcp-login-grid{grid-template-columns:1fr;margin-top:48px}.pcp-login-form{grid-template-columns:1fr}.pcp-login-form button{grid-column:1}.pcp-shell{border-radius:20px}}

/* Confirmation des modifications de rendez-vous. */
.pcp-danger-box{background:#fff1ef;border:1px solid rgba(145,74,68,.28);border-radius:16px;color:#713b37;margin:18px 0;padding:18px 20px}.pcp-danger-box strong{display:block;margin-bottom:6px}.pcp-danger-box p{margin:0}.pcp-cancel-form{background:#fff;border:1px solid var(--line);border-radius:18px;margin-top:16px;padding:20px}.pcp-confirm-check{align-items:flex-start;display:flex;font-weight:700;gap:10px}.pcp-confirm-check input{margin-top:4px}.pcp-action-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end;margin-top:20px}.pcp-danger-button{background:#914a44;border:0;border-radius:12px;color:#fff;cursor:pointer;font-weight:800;padding:12px 16px}.pcp-danger-button:hover{background:#733a36}

.pcp-stat-cancelled{background:var(--danger-soft);border-color:rgba(155,76,70,.18)}.pcp-stat-cancelled span,.pcp-stat-cancelled strong{color:var(--danger)}.pcp-cancelled .pcp-card{background:rgba(246,232,229,.48);border-color:rgba(155,76,70,.18)}.pcp-card.is-cancelled .pcp-datebox{background:#f3dedb;color:var(--danger)}

/* v0.6.0 — cycle complet réservation / déplacement / annulation */
.pcp-booking-page{padding:42px}.pcp-booking-heading{margin:0 0 28px}.pcp-booking-heading h1{font:500 clamp(2.3rem,5vw,4rem)/1 Georgia,"Times New Roman",serif;letter-spacing:-.025em;margin:10px 0 14px;max-width:820px}.pcp-booking-heading p{color:var(--muted);font-size:1rem;max-width:760px}.pcp-back-link{color:var(--forest-soft);display:inline-block;font-size:.8rem;font-weight:750;margin-bottom:22px;text-decoration:none}.pcp-booking-login{margin:80px auto;max-width:680px}.pcp-service-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr))}.pcp-service-card{background:#fff;border:1px solid var(--line);border-radius:20px;display:flex;flex-direction:column;min-height:250px;padding:24px}.pcp-service-card h2{font:500 1.65rem Georgia,"Times New Roman",serif;margin:7px 0 10px}.pcp-service-card p{color:var(--muted);display:-webkit-box;font-size:.88rem;line-height:1.55;margin:0 0 18px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.pcp-service-meta{color:var(--muted);display:flex;flex-wrap:wrap;font-size:.78rem;gap:8px 16px;margin-top:auto;padding:8px 0 16px}.pcp-service-card .pcp-primary{align-self:flex-start;justify-self:auto}.pcp-flow-summary{align-items:center;background:var(--sage-soft);border-radius:14px;color:var(--forest-deep);display:flex;gap:14px;justify-content:space-between;margin:0 0 26px;padding:13px 16px}.pcp-flow-summary a{color:var(--forest-deep);font-size:.75rem;font-weight:800}.pcp-flow-title{font:500 1.7rem Georgia,"Times New Roman",serif;margin:28px 0 16px}.pcp-provider-grid{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.pcp-provider-card{align-items:center;background:#fff;border:1px solid var(--line);border-radius:17px;color:var(--ink)!important;display:flex;gap:12px;padding:16px;text-decoration:none}.pcp-provider-card:hover{box-shadow:0 10px 26px rgba(35,68,58,.08)}.pcp-provider-card strong,.pcp-provider-card small{display:block}.pcp-provider-card small{color:var(--muted);font-size:.72rem;margin-top:3px}.pcp-slot-groups{display:grid;gap:14px}.pcp-slot-day{background:#fff;border:1px solid var(--line);border-radius:18px;display:grid;gap:14px;grid-template-columns:185px 1fr;padding:17px 18px}.pcp-slot-date{align-self:center;color:var(--forest-deep);font:500 1.05rem Georgia,"Times New Roman",serif}.pcp-slot-list{display:flex;flex-wrap:wrap;gap:8px}.pcp-slot{background:var(--sage-soft);border:1px solid transparent;border-radius:10px;color:var(--forest-deep)!important;font-size:.82rem;font-weight:800;min-width:70px;padding:9px 12px;text-align:center;text-decoration:none}.pcp-slot:hover{background:#fff;border-color:var(--forest-soft)}.pcp-slot-pagination{display:flex;gap:10px;justify-content:space-between;margin-top:18px}.pcp-confirm-card{background:#fff;border:1px solid var(--line);border-radius:22px;margin:10px 0;padding:26px}.pcp-confirm-card h2{font:500 2rem Georgia,"Times New Roman",serif;margin:8px 0 20px}.pcp-confirm-list{display:grid;gap:0;grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 20px}.pcp-confirm-list>div{border-top:1px solid var(--line);padding:14px 6px}.pcp-confirm-list dt{color:var(--muted);font-size:.7rem;font-weight:750;text-transform:uppercase}.pcp-confirm-list dd{font-weight:750;margin:4px 0 0}.pcp-info-note{background:var(--sage-soft);border-radius:12px;color:var(--forest-deep);font-size:.8rem;padding:12px 14px}.pcp-primary-button{background:var(--forest);border:0;border-radius:12px;color:#fff;cursor:pointer;font-weight:800;min-height:46px;padding:0 18px}.pcp-primary-button:hover{background:var(--forest-deep)}.pcp-reschedule-comparison{display:grid;gap:12px;grid-template-columns:1fr 1fr;margin:18px 0}.pcp-reschedule-comparison>div{background:var(--sage-soft);border-radius:14px;padding:16px}.pcp-reschedule-comparison span{color:var(--muted);display:block;font-size:.7rem;font-weight:750;text-transform:uppercase}.pcp-reschedule-comparison strong{display:block;margin-top:4px}.pcp-card-actions-disabled{color:var(--muted);font-size:.74rem}.pcp-card-actions-disabled small{font-size:.72rem}.pcp-confirm-form{margin-top:18px}
@media(max-width:860px){.pcp-booking-page{padding:28px 20px}.pcp-service-grid,.pcp-provider-grid,.pcp-confirm-list,.pcp-reschedule-comparison{grid-template-columns:1fr}.pcp-slot-day{grid-template-columns:1fr}.pcp-slot-date{font-size:1rem}.pcp-slot-pagination{flex-direction:column}.pcp-slot-pagination .pcp-secondary{width:100%;text-align:center}}


/* v0.7.0 — listes compactes, bénéficiaire, calendrier et simulation e-mail */
.pcp-fold{background:rgba(255,255,255,.46);border:1px solid var(--line);border-radius:18px;margin-top:24px;overflow:hidden}.pcp-fold>summary{align-items:center;cursor:pointer;display:flex;justify-content:space-between;list-style:none;padding:17px 20px}.pcp-fold>summary::-webkit-details-marker{display:none}.pcp-fold>summary span{display:flex;flex-direction:column;gap:3px}.pcp-fold>summary small{color:var(--forest-soft);font-size:.67rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.pcp-fold>summary strong{font:500 1.35rem Georgia,"Times New Roman",serif}.pcp-fold>summary b{align-items:center;background:var(--sage-soft);border-radius:999px;color:var(--forest-deep);display:flex;font-size:.75rem;height:28px;justify-content:center;min-width:28px;padding:0 9px}.pcp-fold[open]>summary{border-bottom:1px solid var(--line)}.pcp-fold-content{padding:16px}.pcp-cancelled.pcp-fold>summary b{background:var(--danger-soft);color:var(--danger)}
.pcp-beneficiary{background:rgba(223,231,221,.48);border-radius:10px;color:var(--forest-deep);font-size:.8rem;margin:12px 0 0;padding:9px 11px}.pcp-other-person-field{background:#faf8f2;border:1px solid var(--line);border-radius:14px;display:block;margin:18px 0;padding:14px 16px}.pcp-other-person-field span{display:block;font-size:.82rem;font-weight:800}.pcp-other-person-field em{color:var(--muted);font-size:.72rem;font-style:normal;font-weight:600}.pcp-other-person-field input{background:#fff;border:1px solid var(--line);border-radius:10px;display:block;margin-top:9px;padding:11px 12px;width:100%}.pcp-other-person-field small{color:var(--muted);display:block;font-size:.72rem;margin-top:7px}
.pcp-confirmation-panel{background:#fff;border:1px solid var(--line);border-radius:22px;padding:24px}.pcp-calendar-box{align-items:center;background:var(--sage-soft);border-radius:17px;display:flex;gap:18px;justify-content:space-between;margin:20px 0;padding:18px}.pcp-calendar-box h3{font:500 1.25rem Georgia,"Times New Roman",serif;margin:4px 0 0}.pcp-calendar-actions{display:flex;flex-wrap:wrap;gap:8px}.pcp-calendar-actions a{background:#fff;border:1px solid var(--line);border-radius:10px;color:var(--forest-deep)!important;font-size:.76rem;font-weight:800;padding:9px 11px;text-decoration:none}
@media(max-width:860px){.pcp-calendar-box{align-items:flex-start;flex-direction:column}.pcp-calendar-actions{width:100%}.pcp-calendar-actions a{flex:1 1 30%;text-align:center}.pcp-fold-content{padding:12px}}
.pcp-register-link{color:var(--muted);font-size:.82rem;margin:16px 0 0}.pcp-register-link a{color:var(--forest-deep);font-weight:800}.pcp-register-card{margin:52px auto;max-width:760px}.pcp-register-form{margin-top:22px}

/* Suggestions d'adresse : les champs restent modifiables manuellement. */
.pcp-address-field{position:relative}
.pcp-address-suggestions{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:0 12px 28px rgba(35,68,58,.15);left:0;max-height:240px;overflow-y:auto;position:absolute;right:0;top:100%;z-index:20}
.pcp-address-suggestions[hidden]{display:none}
.pcp-address-option{background:#fff;border:0;border-bottom:1px solid var(--line);color:var(--ink);cursor:pointer;display:block;font-size:.85rem;line-height:1.35;padding:12px 14px;text-align:left;width:100%}
.pcp-address-option:last-child{border-bottom:0}
.pcp-address-option:hover,.pcp-address-option[aria-selected="true"]{background:var(--sage-soft);color:var(--forest-deep)}

/* Récupération : texte lisible et champ aligné avec son bouton. */
.pcp-recovery-intro{font-size:1.06rem;line-height:1.6;margin-bottom:24px}
.pcp-login-form.pcp-recovery-form{align-items:end;column-gap:14px;grid-template-columns:minmax(0,1fr) auto;margin-top:26px}
.pcp-recovery-form label{min-width:0}
.pcp-recovery-form input[type=email]{background:#fff;border:1px solid var(--line);border-radius:12px;color:var(--ink);display:block;height:46px;margin-top:9px;padding:11px 12px;width:100%}
.pcp-login-form.pcp-recovery-form button{grid-column:2;min-width:125px}
@media(max-width:600px){.pcp-login-form.pcp-recovery-form{grid-template-columns:1fr}.pcp-login-form.pcp-recovery-form button{grid-column:1;width:100%}}

/* Réservation : largeur réelle du téléphone, commandes tactiles et contenu repliable. */
.pcp-page,.pcp-page .pcp-shell,.pcp-page .pcp-layout,.pcp-page .pcp-content,.pcp-page .pcp-booking-page{min-width:0;max-width:100%}.pcp-page .pcp-service-grid>*,.pcp-page .pcp-provider-grid>*,.pcp-page .pcp-slot-day>*,.pcp-page .pcp-confirm-list>*{min-width:0}.pcp-page p,.pcp-page h1,.pcp-page h2,.pcp-page h3,.pcp-page strong,.pcp-page .pcp-flow-summary{overflow-wrap:anywhere}
@media(max-width:600px){
  .pcp-page{padding:8px 0 30px}.pcp-shell{width:calc(100% - 16px);border-radius:16px}.pcp-topbar{gap:8px;padding:12px 14px;min-height:0}.pcp-brand-mark{flex:none}.pcp-sidebar{padding:10px}.pcp-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}.pcp-nav a{font-size:.82rem;padding:10px 8px;min-width:0}
  .pcp-content,.pcp-booking-page{padding:18px 14px}.pcp-booking-heading h1{font-size:clamp(1.9rem,9vw,2.5rem);line-height:1.1}.pcp-booking-heading{margin-bottom:18px}.pcp-flow-summary{align-items:flex-start;flex-direction:column;gap:6px}.pcp-service-grid,.pcp-provider-grid,.pcp-slot-groups,.pcp-confirm-list{grid-template-columns:minmax(0,1fr)}
  .pcp-service-card{min-height:0;padding:16px}.pcp-service-card .pcp-primary,.pcp-primary-button,.pcp-confirm-form button{width:100%;min-height:48px}.pcp-provider-card{padding:14px}.pcp-slot-day{grid-template-columns:minmax(0,1fr);padding:14px}.pcp-slot-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.pcp-slot{min-width:0;min-height:44px;display:flex;align-items:center;justify-content:center}.pcp-slot-pagination>*{width:100%;text-align:center}
  .pcp-confirm-card,.pcp-confirmation-panel{padding:16px}.pcp-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.pcp-stat{padding:10px}.pcp-card{gap:9px;padding:12px;grid-template-columns:50px minmax(0,1fr)}.pcp-card>div{min-width:0}.pcp-card-title-row{flex-wrap:wrap}.pcp-login-shell,.pcp-message{min-height:0;padding:18px 14px}.pcp-login-grid{margin:20px auto;gap:16px}.pcp-access-card{padding:16px}
}



/* Réservation mobile : progression lisible et cartes compactes sans débordement. */
.pcp-booking-progress{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:0 0 24px;padding:0}.pcp-booking-progress li{min-width:0;text-align:center;color:var(--muted);font-size:.72rem}.pcp-booking-progress li>a>span,.pcp-booking-progress li>.pcp-progress-static>span{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--line);border-radius:50%;margin:0 auto 6px;background:#fff;font-weight:800}.pcp-booking-progress li.is-current{color:var(--forest);font-weight:800}.pcp-booking-progress li.is-current>a>span,.pcp-booking-progress li.is-current>.pcp-progress-static>span,.pcp-booking-progress li.is-complete>a>span{background:var(--forest);color:#fff}.pcp-booking-progress small{display:block;font-size:.71rem;overflow-wrap:anywhere}.pcp-booking-progress li>a,.pcp-booking-progress .pcp-progress-static{display:block;color:inherit;text-decoration:none;border-radius:10px;padding:3px 1px}.pcp-booking-progress li>a:focus-visible{outline:3px solid rgba(35,68,58,.28);outline-offset:2px}.pcp-booking-progress li>a:hover small{text-decoration:underline}.pcp-booking-progress li>a:hover span{transform:translateY(-1px)}
@media(max-width:600px){
  .pcp-booking-page{padding:16px 12px 26px}.pcp-booking-heading{margin-bottom:12px}.pcp-back-link{margin-bottom:10px}.pcp-booking-heading h1{font-size:clamp(1.65rem,7vw,2.1rem);line-height:1.12;margin:6px 0 8px}.pcp-booking-heading p{font-size:.88rem;line-height:1.4}.pcp-booking-progress{gap:2px;margin-bottom:17px}.pcp-booking-progress li>a>span,.pcp-booking-progress li>.pcp-progress-static>span{width:24px;height:24px;margin-bottom:3px}.pcp-booking-progress small{font-size:.64rem}
  .pcp-flow-title{font-size:1.32rem;line-height:1.25;margin:16px 0 10px}.pcp-service-grid{gap:9px}.pcp-service-card{border-radius:13px;padding:12px 14px;min-height:0}.pcp-service-card h2{font-size:1.27rem;line-height:1.18;margin:5px 0}.pcp-service-card p{font-size:.78rem;line-height:1.4;-webkit-line-clamp:2;margin-bottom:5px}.pcp-service-meta{font-size:.74rem;padding:4px 0 8px}.pcp-service-card .pcp-primary{min-height:42px;font-size:.84rem;padding:0 12px;align-self:stretch}
  .pcp-category-card{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:8px;align-items:center}.pcp-category-card .pcp-eyebrow,.pcp-category-card h2,.pcp-category-card .pcp-service-meta{grid-column:1;min-width:0}.pcp-category-card .pcp-primary{grid-column:2;grid-row:1/span 3;min-height:42px;white-space:nowrap;align-self:center}.pcp-category-card .pcp-service-meta{padding:0}
  .pcp-flow-summary{font-size:.78rem;margin-bottom:16px;padding:10px 12px}.pcp-flow-summary span{max-width:100%}.pcp-flow-summary a{display:inline-block;margin:3px 8px 0 0;min-height:30px}.pcp-provider-grid{gap:9px}.pcp-slot-groups{gap:9px}.pcp-slot-day{gap:8px;border-radius:12px;padding:10px 12px}.pcp-slot-date{font-size:.91rem}.pcp-slot-list{grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:7px}.pcp-slot{min-height:44px;font-size:.82rem}.pcp-confirm-list{grid-template-columns:minmax(0,1fr)}.pcp-confirm-list>div{padding:9px 2px}.pcp-confirm-card h2{font-size:1.55rem}.pcp-action-buttons{justify-content:stretch}.pcp-action-buttons>*{width:100%;min-width:0;min-height:44px;box-sizing:border-box;text-align:center}
}

/* v1.1.11 — correction mobile : plein écran réel, aucun débordement horizontal. */
@media(max-width:600px){
  html{max-width:100%;overflow-x:hidden}
  body.peline-portal-page{margin:0!important;max-width:100%;overflow-x:hidden;padding:0!important}
  body.peline-portal-page #site-header,
  body.peline-portal-page #site-footer,
  body.peline-portal-page .site-header,
  body.peline-portal-page .site-footer,
  body.peline-portal-page header.wp-block-template-part,
  body.peline-portal-page footer.wp-block-template-part{display:none!important}
  body.peline-portal-page #site-content,
  body.peline-portal-page .site-content,
  body.peline-portal-page .wp-site-blocks{margin:0!important;max-width:100%!important;overflow:visible!important;padding-left:0!important;padding-right:0!important;width:100%!important}
  body.peline-portal-page .pcp-page{left:50%;margin-left:-50vw!important;margin-right:-50vw!important;max-width:100vw!important;padding:0 0 24px;position:relative;width:100vw!important}
  body.peline-portal-page .pcp-shell{border-left:0;border-radius:0;border-right:0;box-shadow:none;margin:0!important;max-width:100%!important;width:100%!important}
  body.peline-portal-page .pcp-login-shell{min-height:auto;padding:18px 18px 28px}
  body.peline-portal-page .pcp-brand{gap:9px;min-width:0}
  body.peline-portal-page .pcp-brand-mark{height:36px;width:36px}
  body.peline-portal-page .pcp-brand-mark:before,
  body.peline-portal-page .pcp-brand-mark:after{height:19px;left:12px;top:7px;width:10px}
  body.peline-portal-page .pcp-brand strong{font-size:1.08rem}
  body.peline-portal-page .pcp-booking-login{margin:30px 0 6px;max-width:none;width:100%}
  body.peline-portal-page .pcp-booking-login h1{font-size:clamp(2rem,10vw,2.65rem);line-height:1.04;margin:10px 0 14px;overflow-wrap:normal;word-break:normal}
  body.peline-portal-page .pcp-booking-login p{font-size:.95rem;line-height:1.55;margin:0}
  body.peline-portal-page .pcp-booking-login .pcp-action-buttons{align-items:stretch;display:grid;gap:10px;grid-template-columns:1fr;margin-top:22px;width:100%}
  body.peline-portal-page .pcp-booking-login .pcp-action-buttons .pcp-primary,
  body.peline-portal-page .pcp-booking-login .pcp-action-buttons .pcp-secondary{grid-column:auto;justify-self:stretch;margin-top:0;min-height:50px;padding:0 16px;width:100%}
}



/* v1.1.12 — véritable composition mobile Péline, pensée comme un écran d'application. */
@media(max-width:600px){
  html,body{width:100%;min-width:0;overflow-x:hidden}
  body.peline-portal-page{background:var(--ivory,#f7f3ea)!important;min-height:100svh!important;min-height:100dvh!important}

  /* Le portail devient l'interface : aucun chrome du thème WordPress sur mobile. */
  body.peline-portal-page > header,
  body.peline-portal-page > footer,
  body.peline-portal-page #masthead,
  body.peline-portal-page #colophon,
  body.peline-portal-page .site-header,
  body.peline-portal-page .site-footer,
  body.peline-portal-page .wp-site-blocks > header,
  body.peline-portal-page .wp-site-blocks > footer,
  body.peline-portal-page .wp-block-template-part,
  body.peline-portal-page .entry-header,
  body.peline-portal-page .page-header,
  body.peline-portal-page .wp-block-post-title,
  body.peline-portal-page .entry-title{display:none!important}
  body.peline-portal-page #page,
  body.peline-portal-page #content,
  body.peline-portal-page #primary,
  body.peline-portal-page #main,
  body.peline-portal-page #site-content,
  body.peline-portal-page .site,
  body.peline-portal-page .site-content,
  body.peline-portal-page .content-area,
  body.peline-portal-page .site-main,
  body.peline-portal-page .entry-content,
  body.peline-portal-page .wp-site-blocks,
  body.peline-portal-page main{margin:0!important;max-width:none!important;min-height:0!important;padding:0!important;width:100%!important}

  body.peline-portal-page .pcp-page{
    background:linear-gradient(165deg,#fffdf8 0%,#f7f3ea 72%,#eef2eb 100%);
    display:block;
    left:auto!important;
    margin:0!important;
    max-width:none!important;
    min-height:100svh;
    min-height:100dvh;
    padding:0!important;
    position:relative!important;
    width:100%!important
  }
  body.peline-portal-page .pcp-shell{
    background:transparent;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    margin:0!important;
    max-width:none!important;
    width:100%!important
  }

  /* Écrans d'authentification : toute la hauteur visible, respiration verticale. */
  body.peline-portal-page .pcp-login-shell,
  body.peline-portal-page .pcp-message{
    display:flex;
    flex-direction:column;
    min-height:100svh!important;
    min-height:100dvh!important;
    padding:max(22px,env(safe-area-inset-top)) 22px max(22px,env(safe-area-inset-bottom))!important
  }
  body.peline-portal-page .pcp-login-shell>.pcp-brand{
    flex:0 0 auto;
    margin:2px 0 0
  }
  body.peline-portal-page .pcp-brand-mark{height:38px;width:38px}
  body.peline-portal-page .pcp-brand strong{font-size:1.12rem;line-height:1.05}
  body.peline-portal-page .pcp-brand small{font-size:.58rem;letter-spacing:.18em;margin-top:2px}

  /* Porte d'entrée Réservation : texte centré verticalement, actions ancrées en bas. */
  body.peline-portal-page .pcp-booking-login{
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
    justify-content:center;
    margin:0!important;
    max-width:none!important;
    padding:30px 0 8px;
    width:100%!important
  }
  body.peline-portal-page .pcp-booking-login .pcp-eyebrow{font-size:.68rem;letter-spacing:.19em}
  body.peline-portal-page .pcp-booking-login h1{
    color:var(--forest-deep);
    font-size:clamp(2.45rem,11.4vw,3.35rem)!important;
    letter-spacing:-.035em;
    line-height:.98!important;
    margin:13px 0 18px!important;
    max-width:9.5em;
    overflow-wrap:normal!important;
    word-break:normal!important
  }
  body.peline-portal-page .pcp-booking-login>p{
    color:var(--muted);
    font-size:1rem!important;
    line-height:1.58!important;
    margin:0!important;
    max-width:34em
  }
  body.peline-portal-page .pcp-booking-login .pcp-action-buttons{
    display:grid!important;
    gap:10px!important;
    grid-template-columns:1fr!important;
    margin-top:auto!important;
    padding-top:34px;
    width:100%
  }
  body.peline-portal-page .pcp-booking-login .pcp-primary,
  body.peline-portal-page .pcp-booking-login .pcp-secondary{
    border-radius:14px;
    font-size:.96rem;
    justify-self:stretch!important;
    margin:0!important;
    min-height:54px!important;
    width:100%!important
  }

  /* Connexion réelle : une seule colonne, priorité au formulaire. */
  body.peline-portal-page .pcp-login-grid{
    display:flex!important;
    flex:1 1 auto;
    flex-direction:column;
    gap:18px!important;
    justify-content:center;
    margin:0!important;
    max-width:none!important;
    padding:26px 0 4px;
    width:100%
  }
  body.peline-portal-page .pcp-login-grid>.pcp-login-card{padding:0}
  body.peline-portal-page .pcp-login-card h1,
  body.peline-portal-page .pcp-message h1{
    color:var(--forest-deep);
    font-size:clamp(2.25rem,10.5vw,3.05rem)!important;
    letter-spacing:-.035em;
    line-height:1!important;
    margin:12px 0 14px!important
  }
  body.peline-portal-page .pcp-login-card>p,
  body.peline-portal-page .pcp-message>p{font-size:.96rem;line-height:1.5;margin:0}
  body.peline-portal-page .pcp-login-form,
  body.peline-portal-page .pcp-access-form{gap:13px;margin-top:22px}
  body.peline-portal-page .pcp-login-form label,
  body.peline-portal-page .pcp-access-form label{font-size:.78rem}
  body.peline-portal-page .pcp-login-form input[type=text],
  body.peline-portal-page .pcp-login-form input[type=password],
  body.peline-portal-page .pcp-login-form input[type=email],
  body.peline-portal-page .pcp-access-form input[type=email]{
    border-radius:13px;
    font-size:16px;
    min-height:50px;
    padding:12px 14px
  }
  body.peline-portal-page .pcp-login-form button,
  body.peline-portal-page .pcp-access-form button{border-radius:13px;height:52px;font-size:.95rem}
  body.peline-portal-page .pcp-register-link{font-size:.82rem!important;line-height:1.35!important;margin-top:15px!important}

  /* Nouveau client = panneau secondaire clair, pas une seconde page desktop dans la page. */
  body.peline-portal-page .pcp-access-card{
    background:rgba(223,231,221,.52);
    border:1px solid rgba(35,68,58,.12);
    border-radius:18px;
    padding:18px!important
  }
  body.peline-portal-page .pcp-access-card h2{font-size:1.55rem;margin:6px 0 7px}
  body.peline-portal-page .pcp-access-card p{font-size:.86rem;line-height:1.45;margin:0}

  /* Inscription / récupération : même logique plein écran. */
  body.peline-portal-page .pcp-login-shell>.pcp-register-card{
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
    justify-content:center;
    margin:0!important;
    max-width:none!important;
    padding:28px 0 8px;
    width:100%
  }
}

/* Petits téléphones : conserver la lisibilité avant tout. */
@media(max-width:380px){
  body.peline-portal-page .pcp-login-shell{padding-left:18px!important;padding-right:18px!important}
  body.peline-portal-page .pcp-booking-login h1{font-size:2.25rem!important}
  body.peline-portal-page .pcp-login-card h1{font-size:2.05rem!important}
  body.peline-portal-page .pcp-access-card{padding:15px!important}
}

/* v1.1.13 — portail rendu comme une vraie application mobile (document autonome). */
body.peline-app-document{
  margin:0!important;
  min-height:100vh;
  background:#f7f3ea;
}
body.peline-app-document .pcp-page{
  margin:0;
}

@media(max-width:767px){
  body.peline-app-document{
    width:100%!important;
    min-width:0!important;
    overflow-x:hidden!important;
    background:#f7f3ea!important;
  }
  body.peline-app-document .pcp-page{
    width:100%!important;
    min-height:100svh!important;
    min-height:100dvh!important;
    padding:0!important;
    background:
      radial-gradient(circle at 82% 6%,rgba(145,167,143,.12),transparent 34%),
      linear-gradient(180deg,#fffdf8 0%,#f7f3ea 100%)!important;
  }
  body.peline-app-document .pcp-shell{
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    box-shadow:none!important;
    background:transparent!important;
  }

  /* Écran d'entrée réservation : 100 % de la hauteur utile du téléphone. */
  body.peline-app-document .pcp-login-shell{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    min-height:100svh!important;
    min-height:100dvh!important;
    padding:
      max(24px,env(safe-area-inset-top))
      22px
      max(22px,env(safe-area-inset-bottom))!important;
  }
  body.peline-app-document .pcp-login-shell>.pcp-brand{
    flex:0 0 auto;
    margin:0!important;
    padding:0!important;
  }
  body.peline-app-document .pcp-brand{
    gap:11px!important;
  }
  body.peline-app-document .pcp-brand-mark{
    width:42px!important;
    height:42px!important;
    flex:0 0 42px!important;
    background:rgba(255,255,255,.42);
  }
  body.peline-app-document .pcp-brand-mark:before,
  body.peline-app-document .pcp-brand-mark:after{
    height:22px!important;
    width:12px!important;
    left:14px!important;
    top:9px!important;
  }
  body.peline-app-document .pcp-brand strong{
    color:#17372e;
    font-size:1.28rem!important;
    line-height:1!important;
  }
  body.peline-app-document .pcp-brand small{
    font-size:.61rem!important;
    letter-spacing:.18em!important;
    margin-top:4px!important;
  }

  body.peline-app-document .pcp-booking-login{
    display:flex!important;
    flex:1 1 auto!important;
    flex-direction:column!important;
    min-height:0!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:0!important;
  }
  body.peline-app-document .pcp-booking-copy{
    display:flex;
    flex:1 1 auto;
    flex-direction:column;
    justify-content:center;
    min-height:0;
    padding:32px 0 24px;
  }
  body.peline-app-document .pcp-booking-copy .pcp-eyebrow{
    color:#315c4c;
    font-size:.72rem!important;
    font-weight:800;
    letter-spacing:.2em!important;
    margin:0 0 14px;
  }
  body.peline-app-document .pcp-booking-copy h1{
    max-width:8.7em!important;
    margin:0 0 20px!important;
    color:#17372e!important;
    font:500 clamp(2.45rem,11.8vw,3.35rem)/.98 Georgia,"Times New Roman",serif!important;
    letter-spacing:-.04em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
    text-wrap:balance;
  }
  body.peline-app-document .pcp-booking-copy>p{
    max-width:34em!important;
    margin:0!important;
    color:#66726d!important;
    font-size:1rem!important;
    line-height:1.62!important;
  }
  body.peline-app-document .pcp-booking-login .pcp-action-buttons{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:11px!important;
    width:100%!important;
    margin:0!important;
    padding:10px 0 0!important;
  }
  body.peline-app-document .pcp-booking-login .pcp-primary,
  body.peline-app-document .pcp-booking-login .pcp-secondary{
    display:flex!important;
    width:100%!important;
    min-height:56px!important;
    margin:0!important;
    padding:0 18px!important;
    border-radius:15px!important;
    justify-content:center!important;
    align-items:center!important;
    font-size:1rem!important;
    font-weight:800!important;
    line-height:1.2!important;
    text-align:center!important;
  }
  body.peline-app-document .pcp-booking-login .pcp-primary{
    background:#23443a!important;
    color:#fff!important;
    box-shadow:0 10px 26px rgba(35,68,58,.14);
  }
  body.peline-app-document .pcp-booking-login .pcp-secondary{
    background:rgba(255,255,255,.76)!important;
    border:1px solid rgba(35,68,58,.2)!important;
    color:#17372e!important;
  }

  /* Écran de connexion : même logique verticale et formulaire lisible au pouce. */
  body.peline-app-document .pcp-login-grid{
    display:flex!important;
    flex:1 1 auto!important;
    flex-direction:column!important;
    justify-content:center!important;
    gap:20px!important;
    width:100%!important;
    max-width:none!important;
    margin:0!important;
    padding:30px 0 8px!important;
  }
  body.peline-app-document .pcp-login-grid>.pcp-login-card{
    padding:0!important;
  }
  body.peline-app-document .pcp-login-card h1,
  body.peline-app-document .pcp-message h1{
    margin:12px 0 15px!important;
    color:#17372e!important;
    font:500 clamp(2.2rem,10.5vw,3rem)/1 Georgia,"Times New Roman",serif!important;
    letter-spacing:-.035em!important;
  }
  body.peline-app-document .pcp-login-card>p,
  body.peline-app-document .pcp-message>p{
    font-size:.98rem!important;
    line-height:1.55!important;
  }
  body.peline-app-document .pcp-login-form{
    grid-template-columns:1fr!important;
    gap:14px!important;
    margin-top:24px!important;
  }
  body.peline-app-document .pcp-login-form button{
    grid-column:1!important;
    width:100%!important;
    min-height:54px!important;
  }
  body.peline-app-document .pcp-login-form input[type=text],
  body.peline-app-document .pcp-login-form input[type=password],
  body.peline-app-document .pcp-login-form input[type=email],
  body.peline-app-document .pcp-access-form input[type=email]{
    width:100%!important;
    min-height:52px!important;
    border-radius:14px!important;
    font-size:16px!important;
    padding:12px 14px!important;
  }
  body.peline-app-document .pcp-access-card{
    border-radius:18px!important;
    padding:18px!important;
    background:rgba(223,231,221,.5)!important;
  }
}

@media(max-width:380px){
  body.peline-app-document .pcp-login-shell{
    padding-left:18px!important;
    padding-right:18px!important;
  }
  body.peline-app-document .pcp-booking-copy h1{
    font-size:2.25rem!important;
  }
}

.pcp-alerts{background:#f5f8f3;border:1px solid #d8e3d9;border-radius:14px;padding:20px;margin:24px 0;scroll-margin-top:20px}.pcp-alerts summary{cursor:pointer;font-weight:700}.pcp-alerts article{padding:15px 0;border-bottom:1px solid #d8e3d9;scroll-margin-top:20px}.pcp-alert-window{display:flex;flex-wrap:wrap;gap:10px;align-items:end;margin:12px 0}.pcp-alert-window label{display:grid;gap:5px;flex:1 1 140px;min-width:0}.pcp-alert-window input{width:100%;min-width:0;box-sizing:border-box;padding:9px}.pcp-alerts button{margin:8px 8px 8px 0}.pcp-alerts .pcp-confirm-check{display:flex;gap:8px;margin:15px 0}.pcp-alerts input[type=checkbox]{width:auto;flex:none}.pcp-alerts form{min-width:0}
.pcp-waiting-list-summary{list-style:none}.pcp-waiting-list-summary::marker{content:""}.pcp-waiting-list-summary::-webkit-details-marker{display:none}.pcp-waiting-list-summary>span,.pcp-waiting-list-summary strong,.pcp-waiting-list-summary small{display:block}.pcp-waiting-list-summary>span{display:grid;gap:5px}.pcp-waiting-list-summary small{color:var(--muted);font-size:.9em;font-weight:500}

/* Keep the return link separate from the booking heading on every screen. */
.pcp-booking-heading>.pcp-back-link{display:table}.pcp-booking-heading>.pcp-eyebrow{display:block}.pcp-booking-progress .pcp-progress-static{width:auto;height:auto;border:0;background:transparent;margin:0}.pcp-booking-progress small{word-break:normal;overflow-wrap:normal}

.pcp-absent .pcp-card,.pcp-absent .pcp-fold-summary{background:#f1e7fa}.pcp-status-no-show{background:#ead7f7;color:#602580}

/* Account deletion is isolated from routine password changes. */
.pcp-danger-zone{max-width:620px;margin-top:34px;padding:24px;border:1px solid rgba(145,74,68,.35);border-radius:20px;background:#fff5f3;color:#713b37}.pcp-danger-zone h2{margin:8px 0 10px;font:500 1.75rem Georgia,"Times New Roman",serif}.pcp-danger-zone>p{line-height:1.55}.pcp-danger-zone .pcp-security-form{max-width:none;margin-top:18px;border-color:rgba(145,74,68,.22)}.pcp-delete-account-form .pcp-confirm-check{display:flex;align-items:flex-start;gap:10px;color:#713b37;font-size:.82rem}.pcp-delete-account-form .pcp-confirm-check input{display:inline-block;flex:0 0 auto;width:auto;margin:3px 0 0}.pcp-delete-account-form .pcp-danger-button{background:#914a44;color:#fff}.pcp-delete-account-form .pcp-danger-button:hover{background:#733a36}
@media(max-width:700px){.pcp-danger-zone{padding:18px}.pcp-delete-account-form .pcp-danger-button{width:100%;white-space:normal}}

/* Péline 2.5.14 — recherche de créneau et compte sans débordement. */
.pcp-booking-page,.pcp-booking-heading,.pcp-flow-summary,.pcp-alerts,.pcp-alerts details,.pcp-alerts form,.pcp-alerts fieldset,.pcp-alerts label{box-sizing:border-box;max-width:100%;min-width:0}
.pcp-booking-heading p,.pcp-flow-summary span,.pcp-info-note,.pcp-alerts summary,.pcp-alerts p,.pcp-alerts legend,.pcp-alerts label{line-height:1.5;overflow-wrap:anywhere;white-space:normal}
.pcp-info-note{width:100%}
.pcp-alerts fieldset{border:1px solid var(--line);border-radius:12px;margin:16px 0;padding:14px}
.pcp-alerts select{box-sizing:border-box;max-width:100%;min-height:44px;padding:8px 10px;width:100%}
.pcp-alerts button{max-width:100%;min-height:42px;white-space:normal}
.pcp-action-beneficiary{color:var(--muted);display:grid;gap:3px;margin-top:4px}
.pcp-action-beneficiary strong{display:block;font:inherit;font-weight:800}
.pcp-action-beneficiary span{display:block;overflow-wrap:anywhere}
.pcp-profile-card .pcp-form-actions .pcp-primary-button{align-items:center;display:inline-flex;justify-content:center;text-decoration:none}.pcp-profile-form .pcp-form-actions{gap:10px;flex-wrap:wrap}
@media(max-width:600px){
  body.peline-app-document,body.peline-portal-page{background:#fffdf8!important;color-scheme:light}.pcp-page,body.peline-app-document .pcp-page,body.peline-portal-page .pcp-page{background:linear-gradient(145deg,#fffdf8 0%,#f7f3ea 100%)!important}.pcp-shell,body.peline-app-document .pcp-shell,body.peline-portal-page .pcp-shell{background:linear-gradient(145deg,#fffdf8,#f7f3ea)!important}
  .pcp-alerts{margin:16px 0;padding:14px}.pcp-alerts summary{font-size:.92rem}.pcp-alerts fieldset{padding:11px}
  .pcp-alert-window{align-items:stretch;display:grid;grid-template-columns:minmax(0,1fr);gap:9px}.pcp-alert-window label{width:100%}.pcp-alert-window button{margin:0;width:100%}
  .pcp-profile-row{gap:5px;padding:14px 16px}.pcp-profile-card .pcp-form-actions .pcp-primary-button{width:100%}
}

/* Keep the desktop paper surface on the whole mobile portal, including landscape.
   `only light` also prevents browsers from automatically darkening this document. */
html:has(body.peline-app-document),html:has(body.peline-portal-page),
body.peline-app-document,body.peline-portal-page{color-scheme:only light}
@media(max-width:900px){
  body.peline-app-document,body.peline-portal-page{background:#f7f3ea!important}
  body.peline-app-document .pcp-page,body.peline-portal-page .pcp-page,
  body.peline-app-document .pcp-shell,body.peline-portal-page .pcp-shell{
    background-color:#fffdf8!important;
    background-image:linear-gradient(145deg,#fffdf8,#f7f3ea)!important;
    color:#26322e;
    color-scheme:only light;
  }
}
