.account-portal-page{background:#f7f5f0;color:#1c1b18;min-height:100vh}
/* Transition des expériences : repère discret, sans suspension des réservations. */
.experience-update-information{margin:0 20px 16px;padding:12px 15px;background:#f4f5e8;border:1px solid #dfe5be;border-radius:13px;font-size:13px;line-height:1.5;color:#46493a}
.experience-update-status{display:inline-flex;margin-top:8px;padding:5px 10px;border-radius:999px;background:#f4f5e8;border:1px solid #d8dfb2;color:#424d2b;font-size:12px;font-weight:800}
.experience-counter-over{color:#b23424!important;font-weight:800}
.experience-overflow-help.experience-overflow-legacy{color:#645b46}
body[data-account-page="experiences"] #experiences .experience-item .account-list-head>div>b{
  display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;
  overflow:hidden;overflow-wrap:anywhere;white-space:normal;
}
.experience-overflow-help{display:block;color:#b23424;font-size:12px;font-weight:800;line-height:1.4;margin-top:3px}
@media(max-width:600px){.experience-update-information{margin:0 12px 14px}}
/* Respecter l'attribut hidden pour toutes les rubriques propres à chaque mode. */
.account-portal-page [hidden]{display:none!important}
.account-portal-strip{position:sticky;top:0;z-index:24;background:#171715;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.1)}
.account-portal-nav{display:flex;gap:8px;align-items:center;justify-content:center;padding:10px 0;overflow:visible}
.account-context-switch{display:flex;align-items:center;gap:3px;padding:3px;background:#2a2925;border:1px solid rgba(255,255,255,.13);border-radius:999px;width:100%;max-width:760px;flex:1 1 760px}
.account-context-switch button,.account-context-switch a{appearance:none;border:0;background:transparent;color:#c9c7bf;text-decoration:none;border-radius:999px;padding:7px 10px;font:inherit;font-size:11px;font-weight:900;cursor:pointer;white-space:nowrap;display:flex;align-items:center;justify-content:center;flex:1 1 50%;min-width:0;text-align:center}
.account-context-switch button.active,.account-context-switch a.active{background:#fff;color:#171715}
.account-context-divider{width:1px;height:24px;background:rgba(255,255,255,.16);flex:0 0 auto;margin:0 3px}
.account-portal-page .topbar,.availability-page .topbar{z-index:100}
/* La déconnexion est accessible uniquement dans le menu Mon espace, sur PC et mobile. */
.account-portal-page .topbar .nav-actions>#authBtn,
.availability-page .topbar .nav-actions>#authBtn{display:none!important}
/* Conserver le composant de menu existant sans bouton de sortie autonome. */
.account-portal-page .topbar .header-account-menu,.availability-page .topbar .header-account-menu{display:none}
.account-portal-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"],.availability-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"]{display:inline-flex;white-space:nowrap}
.header-account-menu{position:relative;flex:0 0 auto}
.header-account-menu>summary{list-style:none;display:flex;align-items:center;justify-content:center;gap:7px;padding:12px 18px;border:1px solid var(--border);border-radius:999px;background:#fff;color:var(--text);font-size:14px;font-weight:850;line-height:1;cursor:pointer;user-select:none;white-space:nowrap}
.header-account-menu>summary::-webkit-details-marker{display:none}
.header-account-menu>summary:hover,.header-account-menu[open]>summary{border-color:var(--accent);color:var(--text)}
.header-account-menu>summary:focus-visible{outline:3px solid rgba(51,209,198,.45);outline-offset:2px}
.header-account-menu-arrow{font-size:14px;line-height:1;transition:transform .15s ease}
.header-account-menu[open] .header-account-menu-arrow{transform:rotate(180deg)}
.header-account-menu-panel{position:absolute;right:0;top:calc(100% + 10px);z-index:500;width:245px;max-width:calc(100vw - 24px);padding:7px;background:#fff;border:1px solid #ddd8cf;border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.22);display:grid;gap:3px}
.header-account-menu-panel a{display:flex;align-items:center;justify-content:space-between;gap:16px;text-decoration:none;color:#28251f;padding:11px 12px;border-radius:11px;font-size:13px;font-weight:800;line-height:1.25}
.header-account-menu-panel a:hover,.header-account-menu-panel a:focus-visible{background:#f3f0e9;outline:none}
.header-account-menu-panel a.active{background:#ebe7df;color:#171715}
.header-account-menu-panel a b{font-size:13px;color:#147d75}
.header-account-logout{appearance:none;width:100%;min-height:44px;border:0;border-top:1px solid #e5e0d7;background:transparent;color:#55514b;display:flex;align-items:center;justify-content:flex-start;padding:12px;border-radius:11px;font:inherit;font-size:12px;font-weight:650;line-height:1.25;text-align:left;cursor:pointer;margin-top:3px}
.header-account-logout:hover,.header-account-logout:focus-visible{background:#f3f0e9}
.header-account-logout:focus-visible{outline:2px solid #18756c;outline-offset:-2px}
.header-account-logout:disabled{opacity:.55;cursor:wait}
.account-section-menu{position:relative;flex:0 0 auto}
.account-section-menu summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:178px;padding:9px 12px;border-radius:999px;background:#fff;color:#171715;border:1px solid #fff;font-size:12px;font-weight:900;cursor:pointer;user-select:none}
.account-section-menu summary::-webkit-details-marker{display:none}
.account-section-menu summary:focus-visible{outline:3px solid rgba(51,209,198,.45);outline-offset:2px}
.account-section-menu-arrow{font-size:15px;line-height:1;transition:transform .15s ease}
.account-section-menu[open] .account-section-menu-arrow{transform:rotate(180deg)}
.account-section-menu-panel{position:absolute;left:0;top:calc(100% + 8px);z-index:60;width:245px;max-width:calc(100vw - 24px);padding:7px;background:#fff;border:1px solid #ddd8cf;border-radius:16px;box-shadow:0 18px 50px rgba(0,0,0,.22);display:grid;gap:3px}
.account-section-menu-panel a{display:flex;align-items:center;justify-content:space-between;gap:16px;text-decoration:none;color:#28251f;padding:11px 12px;border-radius:11px;font-size:13px;font-weight:800;line-height:1.25}
.account-section-menu-panel a:hover,.account-section-menu-panel a:focus-visible{background:#f3f0e9;outline:none}
.account-section-menu-panel a.active{background:#ebe7df;color:#171715}
.account-section-menu-panel a b{font-size:13px;color:#147d75}
@media(max-width:700px){
 .account-portal-nav{gap:6px}
 .account-context-switch{width:100%;max-width:none;flex:1 1 100%}
 .account-context-switch button,.account-context-switch a{padding:9px 8px;font-size:10px}
 .account-context-divider{display:none}
 .account-portal-page .topbar .nav-actions>#authBtn,.availability-page .topbar .nav-actions>#authBtn{display:none!important}
 .account-portal-page .topbar .nav-actions,.availability-page .topbar .nav-actions{min-width:0}
 .account-portal-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"],.availability-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"]{display:none}
 .account-portal-page .topbar .header-account-menu,.availability-page .topbar .header-account-menu{display:block}
 .header-account-menu>summary{padding:10px 13px}
 .header-account-menu-panel{position:fixed;top:calc(var(--ks-mobile-header-bottom,68px) + 8px);left:12px;right:12px;width:auto;max-width:none;max-height:calc(100dvh - var(--ks-mobile-header-bottom,68px) - 20px);overflow-y:auto;overscroll-behavior:contain}
 .account-section-menu{min-width:0;flex:1}
 .account-section-menu summary{min-width:0;width:100%;padding:9px 11px}
 .account-section-menu-panel{left:auto;right:0;width:min(280px,calc(100vw - 24px))}
}
.account-page-shell{max-width:1180px}
.account-page-shell.narrow{max-width:860px}
.account-page-hero{background:#171715;color:#f7f5f0;padding:60px 0 54px}
.account-page-hero.compact{padding:42px 0 38px}
.account-page-hero h1{font-size:clamp(36px,6vw,68px);line-height:.98;margin:8px 0 16px;letter-spacing:-.04em}
.account-page-hero.compact h1{font-size:clamp(34px,5vw,54px)}
.account-page-hero p{max-width:720px;color:#c7c6bf;font-size:17px;line-height:1.55;margin:0 0 22px}
.account-page-hero .eyebrow{color:var(--highlight)}
.account-primary-actions,.account-form-actions,.account-item-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.account-section{padding:34px 0 76px}
.account-dashboard-grid,.account-list{display:grid;gap:18px}
.account-card{background:#fff;border:1px solid #e4e0d7;border-radius:24px;padding:26px;box-shadow:0 14px 42px rgba(26,24,20,.05);margin-bottom:20px}
.account-card-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}
.account-card-head h2{margin:3px 0 4px;font-size:26px;letter-spacing:-.025em}
.account-card-head p{margin:0;color:#6f6b63}
.account-kicker{font-size:11px;font-weight:950;letter-spacing:.1em;color:#147d75}
.account-kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px}
.account-kpi{text-decoration:none;background:#fff;color:#1c1b18;border:1px solid #e4e0d7;border-radius:20px;padding:20px;display:grid;gap:8px}
.account-kpi span{font-size:13px;color:#6f6b63;font-weight:750}
.account-kpi b{font-size:34px;line-height:1}
.account-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.account-action-grid a{text-decoration:none;color:#1c1b18;border:1px solid #e6e1d8;border-radius:18px;padding:18px;display:grid;gap:5px;transition:.15s ease}
.account-action-grid a:hover{transform:translateY(-1px);border-color:#b8b0a3}
.account-action-grid a b{font-size:18px}
.account-action-grid a span{font-size:13px;color:#6e6a62;line-height:1.4}
.account-focus-card{border:1px solid #e6e1d8;background:#faf8f4;border-radius:18px;padding:18px;display:grid;gap:8px}
.account-focus-card>span{color:#6f6b63}
.payment-setup-alert{border:1px solid #e1c989;background:#fff9e8;border-radius:16px;padding:16px;display:grid;gap:9px;color:#4a4230}
.payment-setup-alert[hidden]{display:none!important}
.payment-setup-alert.is-ready{border-color:#b9dcd4;background:#eef8f5;color:#234a43}
.payment-setup-alert b{color:#24211d;font-size:16px}
.payment-setup-alert p{margin:0;line-height:1.45}
.payment-setup-alert ul{margin:0;padding-left:20px;display:grid;gap:4px}
.payment-setup-alert .btn{width:max-content;margin-top:2px}
.payment-field-attention{outline:3px solid rgba(193,143,20,.22);outline-offset:3px;border-radius:12px}
.account-credit-card{border-radius:18px;padding:18px 20px;background:#e9f7f5;border:1px solid #c4e7e2;display:grid;gap:4px}
.account-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.account-form-grid .span-2{grid-column:1/-1}
.account-form-grid textarea{min-height:112px}
.account-divider{display:flex;align-items:center;gap:12px;margin:8px 0 18px;color:#68645d;font-weight:900;font-size:12px;letter-spacing:.08em;text-transform:uppercase}
.account-divider:after{content:"";height:1px;background:#ded9d0;flex:1}
.profile-page-intro{display:flex;align-items:center;gap:18px}
.profile-page-photo{width:86px;height:86px;border-radius:50%;overflow:hidden;background:#1d1c19;color:#fff;display:grid;place-items:center;font-weight:950;font-size:24px;flex:0 0 auto}
.profile-page-photo img{width:100%;height:100%;object-fit:cover}
.account-danger-card{border-color:#ead3ce;display:flex;align-items:center;justify-content:space-between;gap:20px}
.account-danger-card p{max-width:720px;color:#6f6b63}
.account-list-item{border:1px solid #e5e0d7;border-radius:18px;padding:18px;background:#fff;display:grid;gap:12px;text-decoration:none;color:inherit}
.account-list-item p{margin:0;color:#4f4b44;line-height:1.5}
/* Actions de modification des expériences, accessibles au doigt et au clavier. */
body[data-account-page="experiences"] .account-item-actions .btn{min-height:44px}
body[data-account-page="experiences"] .edit-experience{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:112px;gap:6px}
.account-list-head{display:flex;gap:14px;justify-content:space-between;align-items:flex-start}
.account-list-head>div{display:grid;gap:4px}
.account-list-head span{font-size:13px;color:#706c65}
/* Affichage limité à la rubrique privée des profils de test. */
.private-test-profile{min-width:0;overflow-wrap:anywhere}
.private-test-profile .account-list-head{min-width:0;align-items:center}
.private-test-profile .account-list-head>div{min-width:0}
.private-test-rates,.private-test-availability{display:grid;gap:6px;font-size:13px;color:#514d46}
.private-test-availability>div{display:flex;gap:7px;flex-wrap:wrap}
.private-test-profile .account-focus-card{min-width:0}
@media(max-width:700px){.private-test-profile{padding:15px}.private-test-profile .account-list-head{flex-wrap:wrap}}
.account-pill{display:inline-flex!important;width:max-content;border-radius:999px;padding:5px 9px;background:#efede7;color:#55514a!important;font-size:11px!important;font-weight:850}
.account-empty{border:1px dashed #d9d3c9;border-radius:18px;padding:24px;display:grid;gap:9px;justify-items:start;color:#6e6a63}
.account-empty b{color:#24221e;font-size:18px}
.proposal-stack{display:grid;gap:12px;margin-top:12px}
.proposal-card{border:1px solid #ded9cf;background:#faf8f4;border-radius:16px;padding:16px;display:grid;gap:9px}
.proposal-card>div:first-child{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}
.proposal-card span,.proposal-meta{font-size:13px;color:#6d6961}
.proposal-slots{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.proposal-slots>span{width:100%;font-weight:800;color:#45423c}
.account-two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}
.account-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.account-summary-grid>div,.rate-preview-grid>div,.commission-preview-new>div{display:grid;gap:4px;background:#f7f5f0;border-radius:14px;padding:14px}
.account-summary-grid span,.rate-preview-grid span,.commission-preview-new span{font-size:12px;color:#706c65}
.account-summary-inline{font-size:13px;color:#68645d}
.provider-step-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.provider-step-grid a{text-decoration:none;color:#24211d;border:1px solid #ded9d0;border-radius:16px;padding:16px;display:grid;gap:8px}
.provider-step-grid a span{width:28px;height:28px;border-radius:50%;background:#171715;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:900}

.provider-journey-hero .account-primary-actions{margin-top:4px}
.provider-journey-card{overflow:hidden}
.provider-journey-count{flex:0 0 auto;border:1px solid #d8d3ca;border-radius:999px;padding:7px 11px;font-size:12px;color:#5d5951;background:#faf8f4}
.provider-journey-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.provider-journey-step{position:relative;text-decoration:none;color:#24211d;border:1px solid #ded9d0;border-radius:18px;padding:17px;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;background:#faf8f4;min-height:142px;transition:.15s ease}
.provider-journey-step:hover{transform:translateY(-1px);border-color:#aaa397}
.provider-journey-step.done{background:#f0f7f5;border-color:#cce1dc}
.provider-step-number{width:30px;height:30px;border-radius:50%;background:#171715;color:#fff;display:grid;place-items:center;font-size:12px;font-weight:950}
.provider-journey-step.done .provider-step-number{background:#147d75}
.provider-journey-step>div{display:grid;gap:6px;padding-right:2px}
.provider-journey-step b{font-size:17px;line-height:1.2}
.provider-journey-step>div>span{font-size:13px;color:#6a665f;line-height:1.4}
.provider-journey-step em{grid-column:2;font-style:normal;font-size:12px;font-weight:900;color:#147d75;align-self:end}
.provider-journey-ready{margin-top:14px;border-radius:16px;background:#edf7f5;border:1px solid #c8e1dc;padding:15px 17px;display:flex;align-items:center;justify-content:space-between;gap:14px}
.provider-journey-ready[hidden]{display:none!important}

.provider-journey-nav{position:sticky;top:52px;z-index:23;background:rgba(247,245,240,.97);border-bottom:1px solid #dfd9cf;backdrop-filter:blur(12px)}
.provider-journey-tabs{display:flex;gap:7px;overflow-x:auto;padding:9px 0;scrollbar-width:none;-webkit-overflow-scrolling:touch}
.provider-journey-tabs::-webkit-scrollbar{display:none}
.provider-journey-tabs a{flex:0 0 auto;text-decoration:none;color:#625e57;border:1px solid transparent;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:900;white-space:nowrap}
.provider-journey-tabs a:hover{background:#ebe7df;color:#1e1c18}
.provider-journey-tabs a.active{background:#171715;color:#fff;border-color:#171715}
.provider-journey-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:22px 0 0}
.provider-journey-footer .btn{min-width:0}
/* Même lien de retour que l'agenda, sans charger ses styles sur les autres pages. */
.account-page-back{display:inline-flex;margin-bottom:20px;color:#bdbdb6;font-size:13px;font-weight:850;text-decoration:none}
.account-page-back:hover{color:var(--highlight);text-decoration:none}
.account-page-back:focus-visible{outline:2px solid var(--highlight);outline-offset:3px;border-radius:3px}
body[data-account-page="bookings"] .provider-journey-nav[hidden],
body[data-account-page="bookings"] .provider-journey-footer[hidden]{display:none!important}
/* Le sixième onglet défile à l'intérieur de la barre, sans élargir l'écran mobile. */
body[data-account-page="bookings"] #bookingProviderJourneyNav{width:100%;max-width:100vw;min-width:0;overflow:hidden}
body[data-account-page="bookings"] #bookingProviderJourneyNav>.shell{width:100%;max-width:1180px;min-width:0}
body[data-account-page="bookings"] #bookingProviderJourneyNav .provider-journey-tabs{width:100%;max-width:100%;min-width:0}
#experienceFormWrap,#experiences{scroll-margin-top:118px}
@media(max-width:700px){
 .provider-journey-nav{top:52px}
 .provider-journey-tabs{padding:8px 0}
 .provider-journey-tabs a{padding:8px 10px;font-size:11px}
 .provider-journey-footer{align-items:stretch}
 .provider-journey-footer .btn{flex:1;text-align:center}
}
@media(max-width:480px){
 .provider-journey-footer{flex-direction:column}
 .provider-journey-footer>span:empty{display:none}
 .provider-journey-footer .btn{width:100%}
}
@media(max-width:900px){
 .provider-journey-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:600px){
 .provider-journey-grid{grid-template-columns:1fr}
 .provider-journey-step{min-height:auto}
 .provider-journey-ready{align-items:flex-start;flex-direction:column}
 .provider-journey-count{white-space:nowrap}
}
.rate-preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.rate-preview-grid b{font-size:22px}
.commission-preview-new{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.commission-preview-new>a{font-weight:850;color:#147d75}
.account-preferences{display:grid;gap:18px}
.account-modal{position:fixed;inset:0;z-index:80;background:rgba(14,14,12,.62);display:grid;place-items:center;padding:18px}
.account-modal[hidden]{display:none!important}
.account-modal-card{position:relative;width:min(620px,100%);max-height:90vh;overflow:auto;background:#fff;border-radius:24px;padding:26px;box-shadow:0 24px 80px rgba(0,0,0,.25)}
.account-modal-close{position:absolute;top:13px;right:13px;width:36px;height:36px;border-radius:50%;border:1px solid #ddd7cd;background:#fff;font-size:22px;cursor:pointer}
.review-stars{font-size:17px!important;letter-spacing:1px;color:#a36d06!important}
.verification-inline{border-top:1px solid #e4dfd6;padding-top:14px;display:grid;gap:12px}
.verification-inline[hidden]{display:none!important}
.file-btn{cursor:pointer}
body.role-no-provider [data-role="provider"]{display:none!important}
body.role-no-seeker [data-role="seeker"]{display:none!important}
@media(max-width:800px){
 .account-page-hero{padding:40px 0 36px}
 .account-page-hero.compact{padding:34px 0 30px}
 .account-section{padding:22px 0 60px}
 .account-card{padding:20px;border-radius:20px}
 .account-kpi-grid{grid-template-columns:1fr 1fr}
 .account-kpi-grid .account-kpi:last-child{grid-column:1/-1}
 .account-action-grid,.account-form-grid,.account-two-col,.account-summary-grid{grid-template-columns:1fr}
 .account-form-grid .span-2{grid-column:auto}
 .provider-step-grid{grid-template-columns:1fr 1fr}
 .rate-preview-grid,.commission-preview-new{grid-template-columns:1fr}
 .account-danger-card{align-items:flex-start;flex-direction:column}
 .account-list-head{flex-direction:column}
 .profile-page-intro{align-items:flex-start}
}
@media(max-width:520px){
 .account-kpi-grid{grid-template-columns:1fr}
 .account-kpi-grid .account-kpi:last-child{grid-column:auto}
 .provider-step-grid{grid-template-columns:1fr}
 .account-primary-actions .btn,.account-form-actions .btn{width:100%}
 body[data-account-page="profile"] .profile-communications-head{flex-direction:column;align-items:stretch;gap:18px}
 body[data-account-page="profile"] .profile-communications-head>div{min-width:0;width:100%}
 body[data-account-page="profile"] #profileCommunicationsLink{width:100%;max-width:100%;box-sizing:border-box;white-space:normal;text-align:center;justify-content:center;overflow-wrap:anywhere}
}

.dashboard-hero{padding-bottom:46px}
.dashboard-journey-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:900px}
.dashboard-journey-card,.dashboard-provider-resume{position:relative;text-align:left;border:1px solid rgba(255,255,255,.18);border-radius:22px;padding:22px;background:#24231f;color:#fff;display:grid;gap:8px;text-decoration:none;cursor:pointer;min-height:164px;transition:.16s ease}
.dashboard-journey-card:hover,.dashboard-provider-resume:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.38);background:#2b2a25}
.dashboard-journey-kicker{font-size:11px;font-weight:950;letter-spacing:.1em;color:var(--highlight)}
.dashboard-journey-card b,.dashboard-provider-resume b{font-size:23px;line-height:1.12}
.dashboard-journey-card small,.dashboard-provider-resume small{max-width:350px;color:#c9c7bf;font-size:14px;line-height:1.45}
.dashboard-journey-arrow{position:absolute;right:20px;bottom:18px;font-size:24px}
.dashboard-secondary-link{margin-top:14px}
.dashboard-secondary-link a{color:#d6d3ca;text-underline-offset:4px}
.dashboard-main-card{margin-top:0}
.account-card-link{font-size:13px;font-weight:850;color:#147d75;text-decoration:none;white-space:nowrap}
.account-card-link:hover{text-decoration:underline}
.dashboard-next-booking{display:flex;justify-content:space-between;align-items:center;gap:16px}
.dashboard-next-booking-copy{display:grid;gap:6px}
.dashboard-next-booking-copy b{font-size:20px}
.dashboard-next-booking-copy span{color:#6f6b63}
.dashboard-todo-list,.dashboard-preview-list{display:grid;gap:10px}
.dashboard-todo-item,.dashboard-preview-item{border:1px solid #e6e1d8;border-radius:16px;padding:16px;text-decoration:none;color:#24211d;display:flex;justify-content:space-between;gap:16px;align-items:center;background:#faf8f4}
.dashboard-todo-item>div,.dashboard-preview-item>div{display:grid;gap:4px}
.dashboard-todo-item span,.dashboard-preview-item span{font-size:13px;color:#706c65}
.dashboard-todo-arrow{font-size:20px!important;color:#24211d!important}
.dashboard-preview-item strong{font-size:12px;border-radius:999px;background:#efede7;padding:6px 9px;white-space:nowrap}
.dashboard-provider-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.dashboard-provider-stats a{text-decoration:none;color:#24211d;border:1px solid #e4dfd6;border-radius:18px;padding:17px;display:grid;gap:5px;background:#faf8f4}
.dashboard-provider-stats a>span{font-size:12px;color:#6e6a63;font-weight:800}
.dashboard-provider-stats a>b{font-size:18px;line-height:1.2}
.dashboard-provider-stats a>small{color:#147d75;font-weight:800}
.dashboard-latest-review{margin-top:14px;padding:15px 17px;border-left:3px solid #d7a72f;background:#faf7ed;border-radius:0 14px 14px 0}
.dashboard-latest-review span{font-size:11px;font-weight:900;color:#77652e;text-transform:uppercase;letter-spacing:.06em}
.dashboard-latest-review p{margin:5px 0 0;color:#4d4738;line-height:1.5}
.dashboard-credit{margin:0 0 20px}
/* Tableau de bord : accès rapides visibles sans ajouter de grandes cartes. */
.dashboard-shortcuts{margin:0 0 18px}
.dashboard-shortcuts[hidden]{display:none!important}
.dashboard-shortcuts-label{display:block;margin:0 0 9px;color:#18766c;font-size:11px;font-weight:950;letter-spacing:.08em}
.dashboard-quick-links{display:flex;gap:8px;flex-wrap:wrap;align-items:center;justify-content:flex-start;padding:0}
.dashboard-quick-links a{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 12px;box-sizing:border-box;border:1px solid #ddd8cf;border-radius:999px;background:#fff;color:#34322e;text-decoration:none;text-align:center;font-size:12px;font-weight:850;line-height:1.3;white-space:normal}
.dashboard-quick-links a:hover,.dashboard-quick-links a:focus-visible{color:#126f66;background:#eff9f6;border-color:#8bc6b9;outline:none}
@media(max-width:520px){
 .dashboard-quick-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
 .dashboard-quick-links a{min-width:0;min-height:42px;padding:9px 7px;font-size:12px;overflow-wrap:anywhere}
}
@media(max-width:800px){
 .dashboard-journey-grid{grid-template-columns:1fr}
 .dashboard-journey-card,.dashboard-provider-resume{min-height:144px}
 .dashboard-next-booking{align-items:flex-start;flex-direction:column}
 .dashboard-provider-stats{grid-template-columns:1fr}
 .dashboard-preview-item{align-items:flex-start;flex-direction:column}
 .dashboard-todo-item{align-items:flex-start}
 .account-card-head .account-card-link{white-space:normal}
}
@media(max-width:520px){
 .dashboard-hero{padding-bottom:34px}
 .dashboard-journey-card,.dashboard-provider-resume{padding:19px;border-radius:19px}
 .dashboard-journey-card b,.dashboard-provider-resume b{font-size:21px}
 .dashboard-quick-links{justify-content:flex-start}
}

/* === Mise à niveau visuelle ciblée des pages de parcours === */
body[data-account-page="experiences"] .account-page-hero,
body[data-account-page="requests"] .account-page-hero,
body[data-account-page="profile"] .account-page-hero,
body[data-account-page="payments"] .account-page-hero,
body[data-account-page="rates"] .account-page-hero,
body[data-account-page="opportunities"] .account-page-hero,
body[data-account-page="reviews"] .account-page-hero{
 position:relative;
 overflow:hidden;
}
body[data-account-page="experiences"] .account-page-hero:after,
body[data-account-page="requests"] .account-page-hero:after,
body[data-account-page="profile"] .account-page-hero:after,
body[data-account-page="payments"] .account-page-hero:after,
body[data-account-page="rates"] .account-page-hero:after,
body[data-account-page="opportunities"] .account-page-hero:after,
body[data-account-page="reviews"] .account-page-hero:after{
 content:"";
 position:absolute;
 width:300px;
 height:300px;
 right:-105px;
 top:-165px;
 border-radius:50%;
 background:rgba(51,209,198,.10);
 pointer-events:none;
}
body[data-account-page="experiences"] .account-page-hero .account-page-shell,
body[data-account-page="requests"] .account-page-hero .account-page-shell,
body[data-account-page="profile"] .account-page-hero .account-page-shell,
body[data-account-page="payments"] .account-page-hero .account-page-shell,
body[data-account-page="rates"] .account-page-hero .account-page-shell,
body[data-account-page="opportunities"] .account-page-hero .account-page-shell,
body[data-account-page="reviews"] .account-page-hero .account-page-shell{
 position:relative;
 z-index:1;
}

/* Formulaires principaux : plus éditorialisés, sans changer leur structure. */
body[data-account-page="experiences"] #experienceFormWrap,
body[data-account-page="requests"] #requestFormWrap,
body[data-account-page="opportunities"] #proposalFormWrap,
body[data-account-page="reviews"] #reviewFormWrap{
 border-color:#d9d3c9;
 box-shadow:0 20px 54px rgba(26,24,20,.075);
}
body[data-account-page="experiences"] #experienceFormWrap,
body[data-account-page="requests"] #requestFormWrap{
 max-width:980px;
 margin-left:auto;
 margin-right:auto;
}
body[data-account-page="opportunities"] #proposalFormWrap,
body[data-account-page="reviews"] #reviewFormWrap{
 max-width:940px;
 margin-left:auto;
 margin-right:auto;
}
body[data-account-page="experiences"] #experienceFormWrap>.account-card-head,
body[data-account-page="requests"] #requestFormWrap>.account-card-head,
body[data-account-page="opportunities"] #proposalFormWrap>.account-card-head,
body[data-account-page="reviews"] #reviewFormWrap>.account-card-head{
 padding-left:15px;
 border-left:4px solid var(--accent);
 margin-bottom:20px;
}
body[data-account-page="experiences"] #experienceFormNew,
body[data-account-page="requests"] #requestFormNew,
body[data-account-page="opportunities"] #proposalFormNew,
body[data-account-page="reviews"] #reviewFormNew{
 padding:20px;
 border:1px solid #ebe6dc;
 border-radius:19px;
 background:#faf8f4;
}
body[data-account-page="experiences"] #experienceFormNew>.field,
body[data-account-page="requests"] #requestFormNew>.field,
body[data-account-page="opportunities"] #proposalFormNew>.field,
body[data-account-page="reviews"] #reviewFormNew>.field{
 margin-bottom:0;
 align-content:start;
}
body[data-account-page="experiences"] #experienceFormNew label,
body[data-account-page="profile"] label[for="profileBio"],
body[data-account-page="requests"] #requestFormNew label,
body[data-account-page="opportunities"] #proposalFormNew label,
body[data-account-page="reviews"] #reviewFormNew label{
 color:#34312c;
 font-weight:900;
}
body[data-account-page="experiences"] #experienceFormNew textarea,
body[data-account-page="profile"] #profileBio,
body[data-account-page="requests"] #requestFormNew textarea,
body[data-account-page="opportunities"] #proposalFormNew textarea,
body[data-account-page="reviews"] #reviewFormNew textarea{
 min-height:128px;
 line-height:1.5;
}
body[data-account-page="experiences"] #experienceFormNew .account-form-actions,
body[data-account-page="requests"] #requestFormNew .account-form-actions,
body[data-account-page="opportunities"] #proposalFormNew .account-form-actions,
body[data-account-page="reviews"] #reviewFormNew .account-form-actions{
 margin-top:4px;
 padding-top:18px;
 border-top:1px solid #e3ddd3;
}

/* Partager mon expérience : priorité et progression plus lisibles. */
body[data-account-page="experiences"] .provider-journey-card{
 border-color:#d9d3c9;
 box-shadow:0 18px 48px rgba(26,24,20,.065);
}
body[data-account-page="experiences"] .provider-journey-grid{
 gap:14px;
}
body[data-account-page="experiences"] .provider-journey-step{
 background:#fbfaf7;
 border-color:#e1dcd2;
}
body[data-account-page="experiences"] .provider-journey-step.done{
 background:#eef8f5;
}
body[data-account-page="experiences"] #experiences{
 margin-top:30px;
}
body[data-account-page="experiences"] #experiences>.account-card-head{
 padding-bottom:16px;
 border-bottom:1px solid #ece7de;
}
body[data-account-page="experiences"] #experiences .account-list{
 gap:14px;
}
body[data-account-page="experiences"] #experiences .account-list-item{
 background:#fbfaf7;
}
body[data-account-page="experiences"] #experiences .account-list-item:hover{
 border-color:#cfc8bc;
}
/* Carte prestataire : une action principale, un volet de vérification et une suppression discrète.
   Le serveur conserve seul la logique de vérification automatique et les badges. */
body[data-account-page="experiences"] #experiences .experience-item .account-list-head>div{min-width:0}
body[data-account-page="experiences"] #experiences .experience-item .account-pill{max-width:100%;white-space:normal;overflow-wrap:anywhere}
body[data-account-page="experiences"] #experiences .experience-card-actions{display:flex;align-items:center;flex-wrap:wrap;gap:10px}
body[data-account-page="experiences"] #experiences .experience-card-actions .btn{min-height:44px;max-width:100%;white-space:normal}
body[data-account-page="experiences"] #experiences .experience-card-actions .edit-experience{min-width:112px;font-weight:850}
body[data-account-page="experiences"] #experiences .toggle-verification{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px}
body[data-account-page="experiences"] #experiences .toggle-verification span{font-size:16px;transition:transform .16s ease}
body[data-account-page="experiences"] #experiences .toggle-verification[aria-expanded="true"] span{transform:rotate(180deg)}
body[data-account-page="experiences"] #experiences .experience-verification-panel{display:grid;gap:12px;border:1px solid #dedad0;background:#fff;border-radius:13px;padding:15px;min-width:0}
body[data-account-page="experiences"] #experiences .experience-verification-panel[hidden]{display:none!important}
body[data-account-page="experiences"] #experiences .experience-verification-panel p{margin:0;overflow-wrap:anywhere}
body[data-account-page="experiences"] #experiences .experience-verification-note{background:#f7f2e8;border-radius:9px;padding:10px 12px}
body[data-account-page="experiences"] #experiences .experience-verification-panel .verification-inline{min-width:0}
body[data-account-page="experiences"] #experiences .experience-verification-panel .field{min-width:0}
body[data-account-page="experiences"] #experiences .experience-verification-panel .field input{max-width:100%;min-width:0}
body[data-account-page="experiences"] #experiences .experience-card-footer{display:flex;justify-content:flex-end;align-items:center;border-top:1px solid #ece7de;padding-top:5px}
body[data-account-page="experiences"] #experiences .experience-delete-button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:78px;padding:9px 11px;border:0;border-radius:9px;background:transparent;color:#69635c;cursor:pointer;font:inherit;font-size:13px;font-weight:650}
body[data-account-page="experiences"] #experiences .experience-delete-button:hover{background:#f2eae8;color:#842f28}
body[data-account-page="experiences"] #experiences .experience-delete-button:focus-visible{outline:3px solid #147d75;outline-offset:2px}
@media(max-width:520px){
 body[data-account-page="experiences"] #experiences .experience-card-actions{gap:8px}
 body[data-account-page="experiences"] #experiences .experience-card-actions .btn{flex:0 1 auto;min-width:0}
 body[data-account-page="experiences"] #experiences .experience-card-actions .edit-experience{min-width:112px}
 body[data-account-page="experiences"] #experiences .experience-verification-panel{padding:12px}
}

/* Demandes : transition plus naturelle depuis le parcours J'ai besoin d'aide. */
body[data-account-page="requests"] #requestFormWrap{
 margin-bottom:30px;
}
body[data-account-page="requests"] .account-page-hero .btn{
 min-width:190px;
}
body[data-account-page="requests"] .account-section>.account-page-shell>.account-card:not(#requestFormWrap){
 border-color:#ded9cf;
}
body[data-account-page="requests"] #requestsList .account-list-item{
 background:#fbfaf7;
}

/* Profil : découpage visuel du formulaire long. */
body[data-account-page="profile"] .account-page-shell.narrow{
 max-width:920px;
}
body[data-account-page="profile"] .account-section .account-card:first-child{
 box-shadow:0 20px 54px rgba(26,24,20,.07);
 border-color:#d9d3c9;
}
body[data-account-page="profile"] .profile-page-intro{
 padding:18px;
 border:1px solid #e6e1d8;
 border-radius:19px;
 background:#faf8f4;
}
body[data-account-page="profile"] #profileFormNew{
 margin-top:24px;
}
body[data-account-page="profile"] #profileFormNew>.field{
 margin-bottom:2px;
}
body[data-account-page="profile"] #profileProviderBlock{
 margin-top:8px;
 padding:20px;
 border:1px solid #e4dfd5;
 border-radius:20px;
 background:#faf8f4;
}
body[data-account-page="profile"] #profileProviderBlock .account-divider{
 margin-top:0;
}
body[data-account-page="profile"] #profileProfessionalFields{
 margin-top:4px;
 padding-top:4px;
}
body[data-account-page="profile"] .account-danger-card{
 box-shadow:none;
 background:#fffaf8;
}

/* Paiements : statut, action et historique mieux hiérarchisés. */
body[data-account-page="payments"] .account-two-col{
 gap:24px;
}
body[data-account-page="payments"] .account-two-col>.account-card{
 min-height:100%;
 border-color:#d9d3c9;
}
body[data-account-page="payments"] .account-two-col>.account-card:nth-child(2){
 box-shadow:0 20px 54px rgba(26,24,20,.07);
 position:relative;
 overflow:hidden;
}
body[data-account-page="payments"] .account-two-col>.account-card:nth-child(2):before{
 content:"";
 position:absolute;
 inset:0 auto 0 0;
 width:4px;
 background:var(--accent);
}
body[data-account-page="payments"] #connectStatusNew{
 min-height:0;
 align-content:start;
 border:0;
 background:transparent;
}
body[data-account-page="payments"] #paymentSetupAlert{
 margin-top:14px;
}
body[data-account-page="payments"] #activateStripeBtn{
 min-width:190px;
}
body[data-account-page="payments"] .account-section>.account-page-shell>.account-card{
 margin-top:4px;
}
body[data-account-page="payments"] #paymentTransactions .account-list-item{
 background:#fbfaf7;
}

/* Tarifs : rendre les prix et l'action principale immédiatement lisibles. */
body[data-account-page="rates"] .account-card{
 border-color:#d9d3c9;
 box-shadow:0 20px 54px rgba(26,24,20,.065);
}
body[data-account-page="rates"] .rate-preview-grid{
 margin:4px 0 24px;
 gap:12px;
}
body[data-account-page="rates"] .rate-preview-grid>div{
 min-height:88px;
 align-content:center;
 border:1px solid #e4dfd5;
 background:#faf8f4;
}
body[data-account-page="rates"] #ratesForm{
 padding:20px;
 border:1px solid #ebe6dc;
 border-radius:19px;
 background:#faf8f4;
}
body[data-account-page="rates"] #ratesForm>.field{
 margin-bottom:0;
}
body[data-account-page="rates"] #ratesForm .account-form-actions{
 margin-top:4px;
 padding-top:18px;
 border-top:1px solid #e3ddd3;
}
body[data-account-page="rates"] .commission-preview-new{
 gap:12px;
}
body[data-account-page="rates"] .commission-preview-new>div{
 border:1px solid #e6e1d8;
}

/* Situations publiées : mieux séparer consultation et réponse. */
body[data-account-page="opportunities"] .account-section>.account-page-shell>.account-card:first-child{
 border-color:#d9d3c9;
}
body[data-account-page="opportunities"] #opportunitiesList .account-list-item{
 background:#fbfaf7;
}
body[data-account-page="opportunities"] #proposalFormWrap{
 margin-top:28px;
}

/* Avis : distinguer en un regard les trois états. */
body[data-account-page="reviews"] #reviewsPendingSection{
 border-color:#e3d4a9;
 background:#fffdf7;
}
body[data-account-page="reviews"] #reviewsReceivedSection{
 border-color:#cee2dd;
}
body[data-account-page="reviews"] #reviewsLeftSection{
 background:#fbfaf7;
}
body[data-account-page="reviews"] #reviewsPendingSection>.account-card-head,
body[data-account-page="reviews"] #reviewsReceivedSection>.account-card-head,
body[data-account-page="reviews"] #reviewsLeftSection>.account-card-head{
 padding-bottom:14px;
 border-bottom:1px solid #ece7de;
}

/* Mobile : garder les formulaires simples, respirants et sans débordement. */
@media(max-width:800px){
 body[data-account-page="experiences"] #experienceFormNew,
 body[data-account-page="requests"] #requestFormNew,
 body[data-account-page="opportunities"] #proposalFormNew,
 body[data-account-page="reviews"] #reviewFormNew,
 body[data-account-page="rates"] #ratesForm{
  padding:16px;
  border-radius:16px;
 }
 body[data-account-page="profile"] #profileProviderBlock{
  padding:16px;
  border-radius:17px;
 }
 body[data-account-page="payments"] .account-two-col{
  gap:0;
 }
 body[data-account-page="payments"] .account-two-col>.account-card{
  min-height:0;
 }
}
@media(max-width:520px){
 body[data-account-page="experiences"] #experienceFormWrap,
 body[data-account-page="requests"] #requestFormWrap,
 body[data-account-page="opportunities"] #proposalFormWrap,
 body[data-account-page="reviews"] #reviewFormWrap{
  padding:18px;
 }
 body[data-account-page="experiences"] #experienceFormNew,
 body[data-account-page="requests"] #requestFormNew,
 body[data-account-page="opportunities"] #proposalFormNew,
 body[data-account-page="reviews"] #reviewFormNew,
 body[data-account-page="rates"] #ratesForm{
  padding:14px;
  gap:14px;
 }
 body[data-account-page="experiences"] #experienceFormNew textarea,
 body[data-account-page="profile"] #profileBio,
 body[data-account-page="requests"] #requestFormNew textarea,
 body[data-account-page="opportunities"] #proposalFormNew textarea,
 body[data-account-page="reviews"] #reviewFormNew textarea{
  min-height:112px;
 }
 body[data-account-page="payments"] #activateStripeBtn{
  width:100%;
  min-width:0;
 }
}

/* === Finition premium : rapprocher réellement les pages internes des pages éditoriales === */

/* Le sous-menu prestataire fait désormais partie visuellement du bandeau sombre,
   au lieu de créer une rupture clair/sombre/clair. */
.provider-journey-nav{
 background:#171715;
 border-bottom:1px solid rgba(255,255,255,.10);
 backdrop-filter:blur(16px);
}
.provider-journey-tabs a{
 color:#c8c6bf;
 border-color:transparent;
}
.provider-journey-tabs a:hover{
 background:rgba(255,255,255,.08);
 color:#fff;
}
.provider-journey-tabs a.active{
 background:#fff;
 color:#171715;
 border-color:#fff;
}

/* Heroes des pages encore trop utilitaires : même profondeur que Recherche / Besoin d'aide. */
body[data-account-page="experiences"] .account-page-hero,
body[data-account-page="requests"] .account-page-hero,
body[data-account-page="profile"] .account-page-hero,
body[data-account-page="payments"] .account-page-hero,
body[data-account-page="rates"] .account-page-hero,
body[data-account-page="opportunities"] .account-page-hero,
body[data-account-page="reviews"] .account-page-hero{
 padding:52px 0 60px;
 border-bottom:1px solid #252523;
 background:#111;
}
body[data-account-page="experiences"] .account-page-hero:before,
body[data-account-page="requests"] .account-page-hero:before,
body[data-account-page="profile"] .account-page-hero:before,
body[data-account-page="payments"] .account-page-hero:before,
body[data-account-page="rates"] .account-page-hero:before,
body[data-account-page="opportunities"] .account-page-hero:before,
body[data-account-page="reviews"] .account-page-hero:before{
 content:"";
 position:absolute;
 inset:0;
 background-image:
  linear-gradient(rgba(255,255,255,.026) 1px,transparent 1px),
  linear-gradient(90deg,rgba(255,255,255,.026) 1px,transparent 1px);
 background-size:54px 54px;
 -webkit-mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 96%);
 mask-image:linear-gradient(to bottom,rgba(0,0,0,.75),transparent 96%);
 pointer-events:none;
}
body[data-account-page="experiences"] .account-page-hero:after,
body[data-account-page="requests"] .account-page-hero:after,
body[data-account-page="profile"] .account-page-hero:after,
body[data-account-page="payments"] .account-page-hero:after,
body[data-account-page="rates"] .account-page-hero:after,
body[data-account-page="opportunities"] .account-page-hero:after,
body[data-account-page="reviews"] .account-page-hero:after{
 width:430px;
 height:430px;
 right:-145px;
 top:-215px;
 background:rgba(51,209,198,.15);
 filter:blur(4px);
}
body[data-account-page="experiences"] .account-page-hero.compact h1,
body[data-account-page="requests"] .account-page-hero.compact h1,
body[data-account-page="profile"] .account-page-hero.compact h1,
body[data-account-page="payments"] .account-page-hero.compact h1,
body[data-account-page="rates"] .account-page-hero.compact h1,
body[data-account-page="opportunities"] .account-page-hero.compact h1,
body[data-account-page="reviews"] .account-page-hero.compact h1{
 font-size:clamp(42px,6.2vw,68px);
 line-height:.94;
 letter-spacing:-.055em;
 margin-top:10px;
 margin-bottom:18px;
}
body[data-account-page="experiences"] .account-page-hero p,
body[data-account-page="requests"] .account-page-hero p,
body[data-account-page="profile"] .account-page-hero p,
body[data-account-page="payments"] .account-page-hero p,
body[data-account-page="rates"] .account-page-hero p,
body[data-account-page="opportunities"] .account-page-hero p,
body[data-account-page="reviews"] .account-page-hero p{
 font-size:17px;
 line-height:1.6;
 color:#c9c8c1;
}
body[data-account-page="experiences"] .account-page-hero .eyebrow,
body[data-account-page="requests"] .account-page-hero .eyebrow,
body[data-account-page="profile"] .account-page-hero .eyebrow,
body[data-account-page="payments"] .account-page-hero .eyebrow,
body[data-account-page="rates"] .account-page-hero .eyebrow,
body[data-account-page="opportunities"] .account-page-hero .eyebrow,
body[data-account-page="reviews"] .account-page-hero .eyebrow{
 letter-spacing:.15em;
 color:var(--highlight);
}

/* Sections plus aérées : on évite l'effet "pile de panneaux administratifs". */
body[data-account-page="experiences"] .account-section,
body[data-account-page="requests"] .account-section,
body[data-account-page="profile"] .account-section,
body[data-account-page="payments"] .account-section,
body[data-account-page="rates"] .account-section,
body[data-account-page="opportunities"] .account-section,
body[data-account-page="reviews"] .account-section{
 padding-top:46px;
 background:
  radial-gradient(circle at 88% 6%,rgba(51,209,198,.055),transparent 25%),
  #f7f5f0;
}
body[data-account-page="experiences"] .account-card,
body[data-account-page="requests"] .account-card,
body[data-account-page="profile"] .account-card,
body[data-account-page="payments"] .account-card,
body[data-account-page="rates"] .account-card,
body[data-account-page="opportunities"] .account-card,
body[data-account-page="reviews"] .account-card{
 border-radius:28px;
}
body[data-account-page="experiences"] .account-card-head h2,
body[data-account-page="requests"] .account-card-head h2,
body[data-account-page="profile"] .account-card-head h2,
body[data-account-page="payments"] .account-card-head h2,
body[data-account-page="rates"] .account-card-head h2,
body[data-account-page="opportunities"] .account-card-head h2,
body[data-account-page="reviews"] .account-card-head h2{
 font-size:clamp(25px,3vw,31px);
 letter-spacing:-.035em;
}

/* Expérience : le parcours devient un vrai élément central, avec chevauchement du hero. */
body[data-account-page="experiences"] .account-section{
 padding-top:0;
}
body[data-account-page="experiences"] #providerJourneyCard{
 position:relative;
 z-index:3;
 margin-top:-32px;
 border-radius:30px;
 border-color:#d7d1c6;
 box-shadow:0 28px 70px rgba(26,24,20,.11);
 padding:30px;
}
body[data-account-page="experiences"] #providerJourneyCard .account-card-head{
 margin-bottom:24px;
}
body[data-account-page="experiences"] .provider-journey-step{
 min-height:155px;
 padding:20px;
 border-radius:21px;
 transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
body[data-account-page="experiences"] .provider-journey-step:hover{
 transform:translateY(-3px);
 box-shadow:0 14px 32px rgba(26,24,20,.08);
}
body[data-account-page="experiences"] .provider-step-number{
 width:34px;
 height:34px;
}
body[data-account-page="experiences"] #experienceFormWrap{
 margin-top:30px;
 padding:30px;
}
body[data-account-page="experiences"] #experienceFormNew>.field:first-child,
body[data-account-page="requests"] #requestFormNew>.field:first-child{
 padding:16px;
 border:1px solid #ded8ce;
 border-radius:17px;
 background:#fff;
}
body[data-account-page="experiences"] #experienceFormNew>.field:first-child input,
body[data-account-page="requests"] #requestFormNew>.field:first-child input{
 padding:14px 15px;
 font-size:16px;
 background:#fff;
}

/* Profil : présentation personnelle puis informations détaillées, visuellement séparées. */
body[data-account-page="profile"] .account-section{
 padding-top:0;
}
body[data-account-page="profile"] .account-section .account-card:first-child{
 position:relative;
 z-index:3;
 margin-top:-32px;
 padding:30px;
 border-radius:30px;
 box-shadow:0 28px 70px rgba(26,24,20,.10);
}
body[data-account-page="profile"] .profile-page-intro{
 padding:22px;
 border-radius:22px;
 background:linear-gradient(135deg,#f4f9f7,#faf8f4);
 border-color:#d9e6e2;
}
body[data-account-page="profile"] .profile-page-photo{
 width:96px;
 height:96px;
 box-shadow:0 8px 22px rgba(23,23,21,.13);
}
body[data-account-page="profile"] #profileFormNew{
 padding-top:26px;
 border-top:1px solid #e7e1d8;
}
body[data-account-page="profile"] #profileProviderBlock{
 margin-top:18px;
 padding:24px;
 border-radius:22px;
 border-color:#d7e3df;
 background:linear-gradient(145deg,#f4faf8,#faf8f4);
}

/* Paiements : l'état Stripe devient le point focal plutôt qu'une carte équivalente aux autres. */
body[data-account-page="payments"] .account-section{
 padding-top:0;
}
body[data-account-page="payments"] .account-two-col{
 position:relative;
 z-index:3;
 margin-top:-32px;
}
body[data-account-page="payments"] .account-two-col>.account-card{
 padding:30px;
 border-radius:30px;
 box-shadow:0 24px 62px rgba(26,24,20,.085);
}
body[data-account-page="payments"] .account-two-col>.account-card:nth-child(2){
 background:linear-gradient(145deg,#ffffff,#f3faf8);
 border-color:#cfe1dc;
}
body[data-account-page="payments"] #connectStatusNew{
 padding:0;
 border-radius:0;
 background:transparent;
 box-shadow:none;
}
body[data-account-page="payments"] #activateStripeBtn{
 min-height:48px;
 padding-left:22px;
 padding-right:22px;
}
body[data-account-page="payments"] .account-section>.account-page-shell>.account-card{
 border-radius:26px;
}

/* Tarifs : les trois prix deviennent de vraies cartes de choix visuelles. */
body[data-account-page="rates"] .account-section{
 padding-top:0;
}
body[data-account-page="rates"] .account-section .account-card:first-child{
 position:relative;
 z-index:3;
 margin-top:-32px;
 padding:30px;
 border-radius:30px;
 box-shadow:0 28px 70px rgba(26,24,20,.10);
}
body[data-account-page="rates"] .rate-preview-grid>div{
 position:relative;
 overflow:hidden;
 min-height:112px;
 padding:18px;
 border-radius:20px;
 background:linear-gradient(145deg,#fff,#f7f5f0);
}
body[data-account-page="rates"] .rate-preview-grid>div:after{
 content:"";
 position:absolute;
 right:-28px;
 bottom:-34px;
 width:88px;
 height:88px;
 border-radius:50%;
 background:rgba(182,240,58,.22);
}
body[data-account-page="rates"] .rate-preview-grid b{
 position:relative;
 z-index:1;
 font-size:28px;
}
body[data-account-page="rates"] #ratesForm{
 padding:22px;
 border-radius:21px;
}

/* Demandes / situations / avis : moins de panneau administratif, davantage de respiration. */
body[data-account-page="requests"] #requestFormWrap,
body[data-account-page="opportunities"] #proposalFormWrap,
body[data-account-page="reviews"] #reviewFormWrap{
 padding:30px;
 border-radius:30px;
}
body[data-account-page="requests"] .account-section>.account-page-shell>.account-card:last-child,
body[data-account-page="opportunities"] .account-section>.account-page-shell>.account-card:first-child,
body[data-account-page="reviews"] #reviewsPendingSection,
body[data-account-page="reviews"] #reviewsReceivedSection,
body[data-account-page="reviews"] #reviewsLeftSection{
 padding:28px;
 box-shadow:0 16px 44px rgba(26,24,20,.055);
}
body[data-account-page="opportunities"] #opportunitiesList .account-list-item,
body[data-account-page="requests"] #requestsList .account-list-item,
body[data-account-page="reviews"] .account-list-item{
 border-radius:20px;
 padding:20px;
}

/* Responsive de la finition premium. */
@media(max-width:800px){
 .provider-journey-nav{top:52px}
 body[data-account-page="experiences"] .account-page-hero,
 body[data-account-page="requests"] .account-page-hero,
 body[data-account-page="profile"] .account-page-hero,
 body[data-account-page="payments"] .account-page-hero,
 body[data-account-page="rates"] .account-page-hero,
 body[data-account-page="opportunities"] .account-page-hero,
 body[data-account-page="reviews"] .account-page-hero{
  padding:38px 0 46px;
 }
 body[data-account-page="experiences"] .account-page-hero.compact h1,
 body[data-account-page="requests"] .account-page-hero.compact h1,
 body[data-account-page="profile"] .account-page-hero.compact h1,
 body[data-account-page="payments"] .account-page-hero.compact h1,
 body[data-account-page="rates"] .account-page-hero.compact h1,
 body[data-account-page="opportunities"] .account-page-hero.compact h1,
 body[data-account-page="reviews"] .account-page-hero.compact h1{
  font-size:clamp(38px,10vw,54px);
 }
 body[data-account-page="experiences"] #providerJourneyCard,
 body[data-account-page="profile"] .account-section .account-card:first-child,
 body[data-account-page="payments"] .account-two-col,
 body[data-account-page="rates"] .account-section .account-card:first-child{
  margin-top:-20px;
 }
 body[data-account-page="experiences"] #providerJourneyCard,
 body[data-account-page="profile"] .account-section .account-card:first-child,
 body[data-account-page="payments"] .account-two-col>.account-card,
 body[data-account-page="rates"] .account-section .account-card:first-child,
 body[data-account-page="requests"] #requestFormWrap,
 body[data-account-page="opportunities"] #proposalFormWrap,
 body[data-account-page="reviews"] #reviewFormWrap{
  padding:22px;
  border-radius:24px;
 }
 body[data-account-page="profile"] .profile-page-intro{
  padding:18px;
 }
}
@media(max-width:520px){
 body[data-account-page="experiences"] .account-section,
 body[data-account-page="profile"] .account-section,
 body[data-account-page="payments"] .account-section,
 body[data-account-page="rates"] .account-section{
  padding-left:0;
  padding-right:0;
 }
 body[data-account-page="experiences"] #providerJourneyCard,
 body[data-account-page="profile"] .account-section .account-card:first-child,
 body[data-account-page="payments"] .account-two-col,
 body[data-account-page="rates"] .account-section .account-card:first-child{
  margin-top:-14px;
 }
 body[data-account-page="payments"] .account-two-col>.account-card{
  padding:20px;
 }
 body[data-account-page="profile"] .profile-page-photo{
  width:78px;
  height:78px;
 }
}

/* === Navigation latérale du parcours "Partager mon expérience" === */
.provider-journey-layout{
 max-width:1240px;
 margin:0 auto;
 padding:0 22px;
 display:grid;
 grid-template-columns:190px minmax(0,1fr);
 gap:20px;
 align-items:start;
}
.provider-journey-layout>.provider-journey-nav{
 position:sticky;
 top:92px;
 z-index:18;
 background:transparent;
 border:0;
 backdrop-filter:none;
 padding:28px 0 0;
 transform:translateX(-16px);
}
.provider-journey-layout>.provider-journey-nav>.shell{
 max-width:none;
 margin:0;
 padding:0;
}
.provider-journey-layout .provider-journey-tabs{
 display:flex;
 flex-direction:column;
 gap:5px;
 overflow:visible;
 padding:12px;
 border:1px solid #e2dbd2;
 border-radius:18px;
 background:#fff;
 box-shadow:0 8px 28px rgba(23,23,23,.05);
}
.provider-journey-layout .provider-journey-tabs a{
 width:100%;
 flex:0 0 auto;
 border:0;
 border-radius:11px;
 padding:11px 12px;
 color:#272522;
 background:transparent;
 font-size:14px;
 font-weight:800;
 text-align:left;
 white-space:normal;
}
.provider-journey-layout .provider-journey-tabs a:hover,
.provider-journey-layout .provider-journey-tabs a:focus-visible{
 background:#f5f1e9;
 color:#171717;
 outline:none;
}
.provider-journey-layout .provider-journey-tabs a.active{
 background:#171717;
 color:#fff;
}
.provider-journey-main{
 min-width:0;
 width:100%;
}
/* La navigation latérale reste visible sur ordinateur, tout en laissant
   le menu « Mon espace » s'ouvrir au survol dans les deux parcours. */
@media(min-width:901px){
 body.has-account-side-nav .topbar .header-account-menu{display:block}
 body.has-account-side-nav .provider-journey-layout .provider-journey-tabs{
  max-height:calc(100dvh - 132px);
  overflow-y:auto;
  overscroll-behavior:contain;
 }
}
.provider-journey-mobile{
 display:none;
}

@media(max-width:900px){
 .provider-journey-layout{
  display:block;
  max-width:none;
  margin:0;
  padding:0;
 }
 .provider-journey-layout>.provider-journey-nav{
  position:static;
  padding:10px 16px;
  background:#f7f5f0;
  border-bottom:1px solid #e2dbd2;
  transform:none;
 }
 .provider-journey-layout>.provider-journey-nav>.shell{
  width:100%;
 }
 .provider-journey-layout .provider-journey-tabs{
  display:none;
 }
 .provider-journey-mobile{
  display:block;
  position:relative;
 }
 .provider-journey-mobile-toggle{
  appearance:none;
  width:100%;
  min-height:46px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border:1px solid #e2dbd2;
  border-radius:14px;
  background:#fff;
  color:#272522;
  padding:11px 13px;
  font:inherit;
  font-size:14px;
  font-weight:850;
  text-align:left;
  box-shadow:0 6px 20px rgba(23,23,23,.04);
 }
 .provider-journey-mobile-panel{
  position:absolute;
  top:calc(100% + 7px);
  left:0;
  right:0;
  z-index:40;
  display:grid;
  gap:4px;
  padding:8px;
  border:1px solid #e2dbd2;
  border-radius:14px;
  background:#fff;
  box-shadow:0 12px 32px rgba(23,23,23,.12);
 }
 .provider-journey-mobile-panel[hidden]{
  display:none!important;
 }
 .provider-journey-mobile-panel a{
  display:block;
  width:100%;
  border-radius:10px;
  padding:11px 12px;
  color:#272522;
  text-decoration:none;
  font-size:14px;
  font-weight:800;
 }
 .provider-journey-mobile-panel a:hover,
 .provider-journey-mobile-panel a:focus-visible{
  background:#f5f1e9;
  outline:none;
 }
 .provider-journey-mobile-panel a.active{
  background:#171717;
  color:#fff;
 }
}
@media(max-width:520px){
 .provider-journey-layout>.provider-journey-nav{
  padding-left:16px;
  padding-right:16px;
 }
}

/* Rubriques secondaires de Mon espace : même composant partagé, sans surcharge visuelle. */
.provider-journey-layout .provider-journey-more{
 width:100%;margin-top:6px;padding-top:7px;
 border-top:1px solid #e7e1d9;
}
.provider-journey-layout .provider-journey-more>summary{
 list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;
 gap:6px;min-height:38px;padding:8px 12px;
 color:#625e57;font-size:12px;font-weight:850;border-radius:10px;
}
.provider-journey-layout .provider-journey-more>summary::-webkit-details-marker{display:none}
.provider-journey-layout .provider-journey-more>summary:hover,
.provider-journey-layout .provider-journey-more>summary:focus-visible{background:#f5f1e9;outline-offset:2px}
.provider-journey-layout .provider-journey-more[open]>summary span{transform:rotate(180deg)}
.provider-journey-layout .provider-journey-more-links{display:grid;gap:3px;margin-top:3px}
.provider-journey-layout .provider-journey-more-links a{font-size:13px;padding:10px 12px}
@media(max-width:900px){
 .provider-journey-mobile-panel{
  max-height:min(60dvh,420px);overflow-y:auto;overscroll-behavior:contain;
 }
}
/* En-tête de l'espace sur mobile : préserver « Mon espace » en entier. */
@media(max-width:700px){
 .header-account-menu>summary{
  gap:4px;
  padding:9px 9px;
  font-size:13px;
 }
 .header-account-menu-arrow{font-size:12px}
}
/* Navigation compacte conservée sur ordinateur et mobile ; aucun panneau de rubriques supplémentaire. */
.account-card-head>div{min-width:0}
.account-card-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:9px 12px;border:1px solid #d9e6e2;border-radius:12px;background:#f0f8f5;white-space:normal;text-align:center;flex-shrink:0}
@media(max-width:700px){
 .account-card-head:has(>.account-card-link){flex-direction:column;align-items:stretch;gap:12px}
 .account-card-head>.account-card-link{align-self:flex-start;max-width:100%}
 .account-item-actions .btn{min-height:44px;white-space:normal;text-align:center}
}

/* Guidage des étapes incomplètes : repère léger, sans changer la taille des cartes.
   scroll-margin évite les en-têtes fixes sur ordinateur et mobile. */
.account-portal-page .provider-guided-target,
.availability-page .provider-guided-target{
  outline:2px solid #17b8a6;outline-offset:3px;
  border-radius:7px;
  scroll-margin-top:110px;
  scroll-margin-bottom:28px;
}
.account-portal-page .field.provider-guided-target{background:rgba(23,184,166,.055)}
@media(prefers-reduced-motion:reduce){
  .account-portal-page .provider-guided-target,
  .availability-page .provider-guided-target{scroll-behavior:auto}
}
/* Parcours prestataire : turquoise = rubrique consultée ; coche verte = étape prête. 
   Aucun redimensionnement des cartes, même sur mobile. */
body[data-account-page="experiences"] .provider-journey-step.done:not(.current){
 background:#fbfaf7;
 border-color:#e1dcd2;
}
body[data-account-page="experiences"] .provider-journey-step.done .provider-step-number{
 position:relative;
 background:#171715;
}
body[data-account-page="experiences"] .provider-journey-step.done .provider-step-number::after{
 content:"✓";
 position:absolute;
 right:-6px;
 bottom:-5px;
 width:17px;
 height:17px;
 display:grid;
 place-items:center;
 border:1px solid #b7d9c6;
 border-radius:50%;
 background:#f0faf4;
 color:#147a4d;
 font-size:11px;
 font-weight:900;
 line-height:1;
}
body[data-account-page="experiences"] .provider-journey-step.current{
 border:2px solid #17b8a6;
 background:#eefbf8;
}
body[data-account-page="experiences"] .provider-journey-step.current::before{
 content:"";
 position:absolute;
 left:6px;
 top:18px;
 height:22px;
 width:3px;
 border-radius:999px;
 background:#17b8a6;
}
body[data-account-page="experiences"] .provider-journey-step.current em{
 color:#117c72;
}
body[data-account-page="experiences"] .provider-journey-step.current:focus-visible{
 outline:2px solid #117c72;
 outline-offset:3px;
}

/* Cinq étapes compactes sur une seule ligne : aucun retour à une deuxième rangée.
   Sur les écrans étroits, seul le rail des cartes défile horizontalement. */
body[data-account-page="experiences"] #providerJourneyCard .account-card-head{margin-bottom:14px}
body[data-account-page="experiences"] .provider-journey-grid{
 grid-template-columns:repeat(5,minmax(150px,1fr));
 gap:9px;
 overflow-x:auto;
 padding:2px 2px 8px;
 scroll-snap-type:x proximity;
 overscroll-behavior-x:contain;
 scrollbar-width:thin;
}
body[data-account-page="experiences"] .provider-journey-grid>.provider-journey-step,
body[data-account-page="experiences"] .provider-journey-grid>.provider-journey-step:nth-child(n+4){
 grid-column:auto;
 min-width:0;
 min-height:112px;
 padding:13px 11px;
 border-radius:15px;
 grid-template-columns:26px minmax(0,1fr);
 column-gap:8px;
 row-gap:8px;
 scroll-snap-align:start;
}
body[data-account-page="experiences"] .provider-journey-step .provider-step-number{width:26px;height:26px;font-size:11px}
body[data-account-page="experiences"] .provider-journey-step>div{min-width:0;gap:4px;padding-right:0}
body[data-account-page="experiences"] .provider-journey-step b{font-size:14px;line-height:1.2;overflow-wrap:break-word}
body[data-account-page="experiences"] .provider-journey-step>div>span{font-size:11px;line-height:1.35}
body[data-account-page="experiences"] .provider-journey-step em{font-size:11px;grid-column:2}
@media(max-width:900px){
 body[data-account-page="experiences"] .provider-journey-grid{grid-template-columns:repeat(5,minmax(165px,1fr))}
}
@media(max-width:600px){
 body[data-account-page="experiences"] .provider-journey-grid{
  grid-template-columns:repeat(5,minmax(190px,1fr));
  gap:9px;
  -webkit-overflow-scrolling:touch;
 }
 body[data-account-page="experiences"] .provider-journey-grid>.provider-journey-step{min-height:104px;padding:12px}
}

/* Navigation légère des pages secondaires de Mon espace ; l’interface existante reste inchangée. */
.account-flow-footer{
 display:flex;align-items:stretch;justify-content:space-between;gap:12px;
 margin:24px 0 0;padding-top:18px;border-top:1px solid #ded9d0;
}
.account-flow-footer a{
 display:inline-flex;align-items:center;justify-content:center;
 min-height:44px;max-width:48%;padding:10px 14px;box-sizing:border-box;
 border:1px solid #d6e4df;border-radius:12px;background:#fff;
 color:#18756c;text-decoration:none;text-align:center;
 font-size:13px;font-weight:850;line-height:1.35;
}
.account-flow-footer a:hover,.account-flow-footer a:focus-visible{
 border-color:#61aa9c;background:#f0f8f5;color:#115d56;outline:none;
}
@media(max-width:480px){
 .account-flow-footer{gap:8px}
 .account-flow-footer a{flex:1;min-width:0;max-width:none;padding:10px 8px;font-size:12px;overflow-wrap:anywhere}
}

/* Mon espace : sur ordinateur, le menu latéral remplace les boutons de
   navigation redondants. Ne jamais masquer les actions de formulaire,
   la navigation principale, les cartes de progression ou les liens de détail.
   Jusqu'à 900px, ces raccourcis restent visibles avec le menu mobile. */
@media(min-width:901px){
 body.has-account-side-nav .provider-journey-main .provider-journey-footer,
 body.has-account-side-nav .provider-journey-main .account-flow-footer,
 body.has-account-side-nav .provider-journey-main .account-page-back,
 body.has-account-side-nav .provider-journey-main .dashboard-provider-summary > nav.account-form-actions,
 body.has-account-side-nav .provider-journey-main #providerJourneyReady > a,
 body.has-account-side-nav .provider-journey-main .dashboard-main-card .account-card-head > .account-card-link,
 body.has-account-side-nav .provider-journey-main .dashboard-preview-card .account-card-head > .account-card-link{
  display:none!important;
 }
}

/* Le bloc « Où j’en suis » utilise exclusivement les cinq cartes déjà validées.
   Il reste dans le flux normal : jamais masqué par les formulaires suivants. */
.shared-provider-journey-section{
  background:#f7f5f0;
  padding:20px 0 0;
}
.shared-provider-journey-section>.shell{min-width:0}
.shared-provider-journey{
  overflow:hidden;
  padding:30px;
  border-radius:30px;
  border-color:#d9d3c9;
  box-shadow:0 18px 48px rgba(26,24,20,.065);
}
.shared-provider-journey .account-card-head{margin-bottom:14px}
.shared-provider-journey .provider-journey-grid{
  display:grid;
  grid-template-columns:repeat(5,minmax(150px,1fr));
  gap:9px;
  overflow-x:auto;
  padding:2px 2px 8px;
  scroll-snap-type:x proximity;
  overscroll-behavior-x:contain;
  scrollbar-width:thin;
}
.shared-provider-journey .provider-journey-grid>.provider-journey-step,
.shared-provider-journey .provider-journey-grid>.provider-journey-step:nth-child(n+4){
  grid-column:auto;
  min-width:0;
  min-height:112px;
  padding:13px 11px;
  border-radius:15px;
  background:#fbfaf7;
  border-color:#e1dcd2;
  grid-template-columns:26px minmax(0,1fr);
  column-gap:8px;
  row-gap:8px;
  scroll-snap-align:start;
}
.shared-provider-journey .provider-journey-step>div{min-width:0;gap:4px;padding-right:0}
.shared-provider-journey .provider-journey-step .provider-step-number{
  position:relative;
  width:26px;
  height:26px;
  font-size:11px;
  background:#171715;
}
.shared-provider-journey .provider-journey-step b{font-size:14px;line-height:1.2;overflow-wrap:break-word}
.shared-provider-journey .provider-journey-step>div>span{font-size:11px;line-height:1.35}
.shared-provider-journey .provider-journey-step em{font-size:11px;grid-column:2}
.shared-provider-journey .provider-journey-step.done:not(.current){background:#fbfaf7;border-color:#e1dcd2}
.shared-provider-journey .provider-journey-step.done .provider-step-number::after{
  content:"✓";
  position:absolute;
  right:-6px;
  bottom:-5px;
  width:17px;
  height:17px;
  display:grid;
  place-items:center;
  border:1px solid #b7d9c6;
  border-radius:50%;
  background:#f0faf4;
  color:#147a4d;
  font-size:11px;
  font-weight:900;
  line-height:1;
}
.shared-provider-journey .provider-journey-grid>.provider-journey-step.current{
  border:2px solid #17b8a6;
  background:#eefbf8;
}
.shared-provider-journey .provider-journey-step.current::before{
  content:"";
  position:absolute;
  left:6px;
  top:18px;
  height:22px;
  width:3px;
  border-radius:999px;
  background:#17b8a6;
}
.shared-provider-journey .provider-journey-step.current em{color:#117c72}
.shared-provider-journey .provider-journey-step.current:focus-visible{outline:2px solid #117c72;outline-offset:3px}
/* Conserver les styles des cartes de formulaire, sans chevaucher le récapitulatif. */
body[data-account-page="profile"] .shared-provider-journey-section + .account-section .account-card:first-child,
body[data-account-page="rates"] .shared-provider-journey-section + .account-section .account-card:first-child,
body[data-account-page="payments"] .shared-provider-journey-section + .account-section .account-two-col{
  margin-top:18px;
}
body[data-account-page="profile"] .shared-provider-journey-section + .account-section,
body[data-account-page="rates"] .shared-provider-journey-section + .account-section,
body[data-account-page="payments"] .shared-provider-journey-section + .account-section{
  padding-top:0;
}
@media(max-width:900px){
  .shared-provider-journey .provider-journey-grid{grid-template-columns:repeat(5,minmax(165px,1fr))}
}
@media(max-width:600px){
  .shared-provider-journey-section{padding:14px 0 0}
  .shared-provider-journey{padding:18px;border-radius:23px}
  .shared-provider-journey .account-card-head{align-items:flex-start;gap:10px}
  .shared-provider-journey .provider-journey-grid{grid-template-columns:repeat(5,minmax(190px,1fr));-webkit-overflow-scrolling:touch}
  .shared-provider-journey .provider-journey-grid>.provider-journey-step{min-height:104px;padding:12px}
}

/* Mon espace : lien direct + flèche distincte, groupés visuellement sur PC et mobile.
   Le panneau réutilise les mêmes rubriques que l'espace latéral. */
.account-portal-page .topbar .header-account-menu,
.availability-page .topbar .header-account-menu{display:block}
.account-portal-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"],
.availability-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"]{
  display:inline-flex;min-height:42px;align-items:center;
  padding:10px 13px;border-radius:999px 0 0 999px;margin-right:-10px;
  font-size:14px;line-height:1;white-space:nowrap
}
.topbar .header-account-menu>summary{
  min-width:32px;min-height:42px;padding:9px 10px;
  background:transparent;color:#fff;border-color:rgba(255,255,255,.22);
  border-radius:0 999px 999px 0;font-size:14px
}
.topbar .header-account-menu>summary:hover,
.topbar .header-account-menu[open]>summary{border-color:var(--accent);color:var(--accent)}
.topbar .header-account-menu>summary .header-account-menu-arrow{width:16px;height:16px;flex:none;display:block;transition:transform .15s ease}
@media(max-width:700px){
  .account-portal-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"],
  .availability-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"]{
    display:inline-flex;padding:9px 9px;font-size:12px;min-height:39px;margin-right:-6px
  }
  .topbar .header-account-menu>summary{min-height:39px;min-width:29px;padding:8px}
  .topbar .header-account-menu>summary .header-account-menu-arrow{width:15px;height:15px}
}
@media(max-width:380px){
  .account-portal-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"],
  .availability-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"]{padding-left:7px;padding-right:7px;font-size:11px}
  .topbar .header-account-menu>summary{min-width:25px;padding:7px}
}
/* Cloche de notifications + menu de l'espace : aucun débordement à 320-430px. */
@media(max-width:430px){
  .account-portal-page .topbar .shell.nav:has(.header-account-menu),
  .availability-page .topbar .shell.nav:has(.header-account-menu){gap:2px}
  .account-portal-page .topbar .nav-actions:has(.header-account-menu),
  .availability-page .topbar .nav-actions:has(.header-account-menu){gap:2px}
  .account-portal-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"],
  .availability-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"]{
    padding-left:5px;padding-right:5px;margin-right:-2px
  }
  .account-portal-page .topbar .header-account-menu>summary,
  .availability-page .topbar .header-account-menu>summary{min-width:25px;padding:5px}
}

/* En-tête initial : un seul bouton « Mon espace ».
   La navigation directe reste active et le menu reste au survol sur PC. */
.account-portal-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"],
.availability-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"]{
  border-radius:999px;margin-right:0;padding-right:18px
}
.account-portal-page .topbar .header-account-menu,
.availability-page .topbar .header-account-menu{
  display:block;position:relative;width:0;height:0;min-width:0;
  flex:0 0 0;margin-left:calc(-1 * var(--ks-account-nav-gap,10px));z-index:500
}
.account-portal-page .topbar .header-account-menu>summary,
.availability-page .topbar .header-account-menu>summary{display:none!important}
.account-portal-page .topbar .header-account-menu-panel,
.availability-page .topbar .header-account-menu-panel{top:28px}
@media(max-width:700px){
  .account-portal-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"],
  .availability-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"]{
    border-radius:999px;margin-right:0;padding-right:11px
  }
  .account-portal-page .topbar .header-account-menu-panel,
  .availability-page .topbar .header-account-menu-panel{
    top:calc(var(--ks-mobile-header-bottom,68px) + 8px)
  }
}
@media(max-width:430px){
  .account-portal-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"],
  .availability-page .topbar .nav-actions>a.keep-mobile[href^="/mon-espace"]{
    margin-right:0;padding-right:7px
  }
}
@media(hover:none),(pointer:coarse){
  .account-portal-page .topbar .nav-actions>#authBtn,
  .availability-page .topbar .nav-actions>#authBtn{display:none!important}
  .topbar .header-account-menu .header-account-logout{display:flex!important}
}
@media(prefers-reduced-motion:reduce){
  .topbar .header-account-menu *{transition:none!important}
}

/* Accessibilité ciblée : commandes des espaces personnels. */
.account-context-switch>a,.account-context-switch>button,
.account-section-menu summary,
.provider-journey-layout .provider-journey-more>summary{
  min-height:44px;
}
.provider-journey-layout .provider-journey-tabs a,
.provider-journey-layout .provider-journey-more-links a,
.provider-journey-mobile-panel a{
  display:flex;align-items:center;min-height:44px;
}
.account-portal-page .topbar a.keep-mobile[href^="/mon-espace"],
.availability-page .topbar a.keep-mobile[href^="/mon-espace"]{
  position:relative;
}
.account-portal-page .topbar a.keep-mobile[href^="/mon-espace"]::after,
.availability-page .topbar a.keep-mobile[href^="/mon-espace"]::after{
  content:"";position:absolute;inset:-3px 0;
}

/* Navigation prestataire : largeur fiable, sans intitulés tronqués. */
@media (min-width:901px){
  body.has-account-side-nav .provider-journey-layout{
    width:100%;
    max-width:1380px;
    box-sizing:border-box;
    grid-template-columns:240px minmax(0,1fr);
    gap:clamp(20px,2.4vw,36px);
    align-items:start;
  }
  body.has-account-side-nav .provider-journey-layout > .provider-journey-nav{
    width:240px;
    min-width:240px;
    max-width:240px;
    box-sizing:border-box;
    transform:none;
    padding-top:24px;
  }
  body.has-account-side-nav .provider-journey-layout > .provider-journey-nav > .shell{
    width:100%;
    min-width:0;
    max-width:100%;
    box-sizing:border-box;
    padding:0;
  }
  body.has-account-side-nav .provider-journey-layout .provider-journey-tabs{
    width:100%;
    min-width:0;
    max-width:100%;
    box-sizing:border-box;
    padding:10px;
    gap:4px;
    overflow-x:hidden;
    border-radius:10px;
    box-shadow:none;
  }
  body.has-account-side-nav .provider-journey-layout .provider-journey-tabs a,
  body.has-account-side-nav .provider-journey-layout .provider-journey-more > summary{
    box-sizing:border-box;
    display:flex;
    align-items:center;
    width:100%;
    min-width:0;
    max-width:100%;
    padding:11px 12px;
    font-size:14px;
    line-height:1.35;
    text-align:left;
    white-space:normal;
    overflow-wrap:normal;
    word-break:normal;
    border-radius:5px;
    box-shadow:none;
  }
  body.has-account-side-nav .provider-journey-layout .provider-journey-more{
    min-width:0;
    box-sizing:border-box;
  }
  body.has-account-side-nav .provider-journey-layout .provider-journey-main{
    width:100%;
    min-width:0;
    box-sizing:border-box;
  }
}
@media (max-width:900px){
  body.has-account-side-nav .provider-journey-layout{
    width:100%;
    grid-template-columns:minmax(0,1fr);
  }
  body.has-account-side-nav .provider-journey-layout > .provider-journey-nav{
    width:100%;
    min-width:0;
    max-width:100%;
    transform:none;
  }
}