:root{--pp-blue:#1f4e79;--pp-bright:#2563eb;--pp-ink:#102f4b;--pp-text:#536579;--pp-line:#dbe7f5;--pp-soft:#f5f9ff;--pp-ok:#198754;--pp-warn:#b7791f;--pp-danger:#c0392b}.pp-body{margin:0;background:#f7faff;color:var(--pp-ink);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}.pp-top{position:sticky;top:0;z-index:20;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:14px clamp(18px,4vw,56px);background:rgba(255,255,255,.96);border-bottom:1px solid var(--pp-line);backdrop-filter:blur(12px)}.pp-brand{display:flex;align-items:center;gap:14px;color:var(--pp-blue);font-weight:850;text-decoration:none}.pp-brand img{width:125px;height:34px;object-fit:contain}.pp-brand span{padding-left:14px;border-left:1px solid var(--pp-line)}.pp-top nav{display:flex;flex-wrap:wrap;gap:8px}.pp-top nav a{padding:9px 12px;border-radius:10px;color:#38536b;text-decoration:none;font-weight:750;font-size:.9rem}.pp-top nav a:hover,.pp-top nav a.is-active{background:#eaf3ff;color:var(--pp-bright)}.pp-main{min-height:80vh}.pp-container{width:min(1180px,calc(100% - 32px));margin:auto}.pp-hero{padding:72px 0 55px;background:radial-gradient(circle at 90% 0,rgba(37,99,235,.18),transparent 38%),linear-gradient(135deg,#f8fbff,#fff 58%,#eef6ff);border-bottom:1px solid var(--pp-line)}.pp-hero__grid{display:grid;grid-template-columns:1.2fr .8fr;gap:38px;align-items:center}.pp-eyebrow{display:inline-flex;padding:7px 11px;border:1px solid #cfe0f5;border-radius:999px;background:#fff;color:var(--pp-bright);font-size:.8rem;font-weight:850}.pp-hero h1{font-size:clamp(2.2rem,5vw,4.5rem);line-height:1.02;letter-spacing:-.045em;margin:18px 0;color:#0f2f4f}.pp-lead{font-size:1.08rem;line-height:1.7;color:var(--pp-text);max-width:760px}.pp-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.pp-btn{display:inline-flex;justify-content:center;align-items:center;min-height:46px;padding:0 17px;border:1px solid var(--pp-blue);border-radius:12px;background:linear-gradient(135deg,var(--pp-blue),var(--pp-bright));color:white;text-decoration:none;font-weight:800;cursor:pointer}.pp-btn--secondary{background:white;color:var(--pp-blue);border-color:#cbdceb}.pp-btn--danger{background:#fff;color:var(--pp-danger);border-color:#efc2bd}.pp-btn--small{min-height:36px;padding:0 12px;font-size:.84rem}.pp-panel,.pp-card{background:#fff;border:1px solid var(--pp-line);border-radius:20px;box-shadow:0 15px 38px rgba(15,48,87,.07)}.pp-panel{padding:24px}.pp-section{padding:48px 0}.pp-section h2{font-size:clamp(1.6rem,3vw,2.45rem);margin:0 0 10px}.pp-muted{color:var(--pp-text);line-height:1.6}.pp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.pp-card{padding:20px}.pp-choice{position:relative;overflow:hidden}.pp-choice:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(var(--pp-blue),var(--pp-bright))}.pp-kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.pp-kpi{padding:18px;border-radius:16px;background:rgba(255,255,255,.82);border:1px solid var(--pp-line)}.pp-kpi strong{display:block;font-size:1.7rem;color:var(--pp-blue)}.pp-form{display:grid;gap:18px}.pp-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.pp-field{display:grid;gap:7px}.pp-field label,.pp-label{font-size:.86rem;font-weight:800;color:#27445f}.pp-field input,.pp-field select,.pp-field textarea{width:100%;box-sizing:border-box;border:1px solid #cbdceb;border-radius:11px;padding:12px 13px;background:#fff;color:#183951;font:inherit}.pp-field textarea{min-height:120px;resize:vertical}.pp-checks{display:flex;flex-wrap:wrap;gap:10px}.pp-check{display:flex;align-items:center;gap:8px;padding:9px 11px;border:1px solid var(--pp-line);border-radius:10px;background:#fbfdff}.pp-filterbar{display:grid;grid-template-columns:2fr repeat(4,1fr) auto;gap:10px;padding:16px;margin-top:-30px;position:relative;z-index:2}.pp-list{display:grid;gap:16px}.pp-ad{display:grid;grid-template-columns:95px 1fr auto;gap:18px;align-items:center;padding:20px}.pp-avatar{width:82px;height:82px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#dcecff,#f4f8ff);color:var(--pp-blue);font-size:1.5rem;font-weight:900;overflow:hidden}.pp-avatar img{width:100%;height:100%;object-fit:cover}.pp-ad h3{margin:0 0 6px}.pp-badges{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0}.pp-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:#eef6ff;border:1px solid #d1e3f7;color:#23517b;font-size:.74rem;font-weight:800}.pp-badge--svs{background:#0f2f4f;color:#fff;border-color:#0f2f4f}.pp-badge--ok{background:#ecf8f1;color:#146c43;border-color:#bce2cc}.pp-price{font-size:1.3rem;font-weight:900;color:var(--pp-blue)}.pp-status{font-size:.78rem;font-weight:850;text-transform:uppercase;letter-spacing:.04em}.pp-status--pending{color:var(--pp-warn)}.pp-status--verified,.pp-status--published{color:var(--pp-ok)}.pp-status--rejected,.pp-status--closed{color:var(--pp-danger)}.pp-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.pp-tabs a{padding:10px 13px;border-radius:10px;background:white;border:1px solid var(--pp-line);text-decoration:none;color:#36536e;font-weight:800}.pp-tablewrap{overflow:auto}.pp-table{width:100%;border-collapse:collapse}.pp-table th,.pp-table td{text-align:left;padding:12px;border-bottom:1px solid #e6eef7;vertical-align:top}.pp-table th{font-size:.78rem;text-transform:uppercase;color:#567086}.pp-alert{width:min(1120px,calc(100% - 32px));margin:16px auto;padding:13px 16px;border-radius:12px;border:1px solid}.pp-alert--success{background:#effaf4;border-color:#bce2cc;color:#146c43}.pp-alert--error{background:#fff2f0;border-color:#efc2bd;color:#9f2e24}.pp-alert--info{background:#eef6ff;border-color:#cfe0f5;color:#23517b}.pp-conversation{display:grid;grid-template-columns:310px 1fr;gap:18px}.pp-thread{height:540px;overflow:auto;padding:18px;background:#f7faff;border-radius:16px}.pp-message{max-width:72%;margin:8px 0;padding:11px 13px;border-radius:14px;background:#fff;border:1px solid var(--pp-line)}.pp-message--mine{margin-left:auto;background:#eaf3ff}.pp-footer{margin-top:50px;padding:26px clamp(18px,4vw,56px);background:#0f2f4f;color:#dbe9f5;text-align:center}.pp-empty{text-align:center;padding:45px 20px;color:var(--pp-text)}.pp-admin-nav{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}.pp-admin-nav a{padding:9px 12px;border-radius:10px;border:1px solid var(--pp-line);background:#fff;text-decoration:none;color:var(--pp-blue);font-weight:800}@media(max-width:900px){.pp-hero__grid,.pp-conversation{grid-template-columns:1fr}.pp-grid{grid-template-columns:1fr 1fr}.pp-filterbar{grid-template-columns:1fr 1fr}.pp-ad{grid-template-columns:72px 1fr}.pp-ad>.pp-actions{grid-column:1/-1}.pp-top{align-items:flex-start;flex-direction:column}.pp-message{max-width:88%}}@media(max-width:600px){.pp-grid,.pp-form-grid,.pp-filterbar{grid-template-columns:1fr}.pp-ad{grid-template-columns:1fr}.pp-avatar{width:64px;height:64px}.pp-hero{padding-top:45px}.pp-brand span{display:none}}

.pp-brand>a{display:flex}.pp-brand-title{color:var(--pp-blue);text-decoration:none;padding-left:14px;border-left:1px solid var(--pp-line)}.pp-mail{position:relative;font-size:1.2rem}.pp-mail span{position:absolute;right:-3px;top:-5px;min-width:17px;height:17px;border-radius:999px;background:#c0392b;color:#fff;font-size:.68rem;display:grid;place-items:center}.pp-info{position:relative;display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#eaf3ff;color:#2563eb;font-size:.72rem;font-weight:900;cursor:help}.pp-info:after{content:attr(data-tip);position:absolute;left:50%;bottom:calc(100% + 10px);transform:translateX(-50%);width:260px;padding:10px 12px;background:#102f4b;color:#fff;border-radius:9px;font-size:.76rem;line-height:1.45;opacity:0;visibility:hidden;transition:.15s;z-index:50;font-weight:500}.pp-info:hover:after,.pp-info:focus:after{opacity:1;visibility:visible}.pp-calendar{display:grid;grid-template-columns:repeat(7,minmax(74px,1fr));gap:5px;overflow:auto}.pp-cal-head{position:sticky;top:0;padding:10px 4px;background:#0f2f4f;color:#fff;text-align:center;border-radius:8px;font-size:.78rem;font-weight:800}.pp-slot{position:relative;min-height:38px;border:1px solid var(--pp-line);border-radius:8px;background:#f8fbff;display:grid;place-items:center;cursor:pointer;font-size:.76rem}.pp-slot input{position:absolute;opacity:0}.pp-slot.is-selected{background:#dff5e8;border-color:#62b982;color:#146c43;font-weight:850}.pp-avatar:empty:before{content:'Photo';font-size:.75rem;color:#6f8293}.pp-avatar--large{width:120px;height:120px}.pp-avatar--xl{width:145px;height:145px;border-radius:28px}.pp-avatar--mini{width:45px;height:45px;border-radius:10px}.pp-profile-head,.pp-mini-profile{display:flex;align-items:center;gap:16px}.pp-ad--svs{border:2px solid #1f4e79;background:linear-gradient(135deg,#fff,#f4f9ff)}.pp-detail{margin-top:20px;display:grid;gap:20px}.pp-detail-hero{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;padding:28px;background:linear-gradient(135deg,#f5f9ff,#fff);border:1px solid var(--pp-line);border-radius:24px}.pp-price-card{padding:18px;border-radius:16px;background:#0f2f4f;color:#fff}.pp-price-card span{display:block;font-size:.78rem}.pp-price-card strong{font-size:1.45rem}.pp-detail-grid{display:grid;grid-template-columns:1fr 330px;gap:20px}.pp-detail-grid>div{display:grid;gap:18px}.pp-sticky{position:sticky;top:95px;height:max-content}.pp-week-summary{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.pp-week-summary div{padding:10px;border:1px solid var(--pp-line);border-radius:10px}.pp-week-summary strong,.pp-week-summary span{display:block}.pp-week-summary span{color:var(--pp-text);margin-top:3px}.pp-badge--danger{background:#fff0ee;color:#a63227;border-color:#efc2bd}.pp-severity{padding:5px 8px;border-radius:999px;font-size:.72rem;font-weight:900;text-transform:uppercase}.pp-severity--info{background:#eaf3ff;color:#23517b}.pp-severity--warning{background:#fff5dc;color:#8a5a00}.pp-severity--critical{background:#ffe4e0;color:#9f2e24}.pp-log--critical{background:#fff7f6}.pp-log--warning{background:#fffdf5}dialog{border:0;border-radius:18px;box-shadow:0 25px 80px rgba(0,0,0,.25);width:min(560px,calc(100% - 32px))}dialog::backdrop{background:rgba(15,47,79,.55)}@media(max-width:900px){.pp-detail-hero,.pp-detail-grid{grid-template-columns:1fr}.pp-sticky{position:static}.pp-calendar{grid-template-columns:repeat(7,90px)}}
.pp-filterbar--advanced{grid-template-columns:repeat(4,minmax(140px,1fr));align-items:center}.pp-map{overflow:hidden;border:1px solid var(--pp-line);border-radius:16px;background:#f7faff}.pp-map iframe{display:block;width:100%;height:330px;border:0}.pp-map>a{display:block;padding:10px 14px;text-align:right;font-weight:800}.pp-conversation-card{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;text-decoration:none;color:inherit;padding:18px}.pp-conversation-card h3{margin:4px 0}.pp-conversation-card small{font-size:.78rem;color:var(--pp-text)}.pp-chat-head{display:flex;align-items:center;gap:18px;padding-bottom:16px;border-bottom:1px solid var(--pp-line);margin-bottom:16px}.pp-legal-accept{display:grid;gap:10px}.pp-legal-accept a{font-weight:850}.pp-legal h2{margin-top:28px}.pp-admin-sidebar{position:fixed;left:0;top:76px;bottom:0;width:250px;padding:20px 14px;background:#0f2f4f;color:#fff;overflow:auto;z-index:20;box-shadow:10px 0 30px rgba(15,47,79,.08)}.pp-admin-sidebar nav{display:grid;gap:7px;margin-top:20px}.pp-admin-sidebar a{display:block;padding:11px 13px;border-radius:10px;text-decoration:none;color:#e8f2fb;font-weight:750}.pp-admin-sidebar a:hover{background:rgba(255,255,255,.1)}.pp-admin-home{border-bottom:1px solid rgba(255,255,255,.18);border-radius:0!important}.pp-admin-home strong,.pp-admin-home span{display:block}.pp-admin-home span{font-size:.78rem;opacity:.72;margin-top:3px}.pp-admin-sidebar~*{margin-left:270px}.pp-admin-alert{border-left:5px solid var(--pp-danger)}
@media(max-width:900px){.pp-filterbar--advanced{grid-template-columns:1fr 1fr}.pp-admin-sidebar{position:static;width:auto;margin:0 16px;border-radius:16px}.pp-admin-sidebar nav{grid-template-columns:1fr 1fr}.pp-admin-sidebar~*{margin-left:0}.pp-conversation-card{grid-template-columns:auto 1fr}.pp-conversation-card>span:last-child{grid-column:2}}
@media(max-width:600px){.pp-filterbar--advanced,.pp-admin-sidebar nav{grid-template-columns:1fr}.pp-map iframe{height:260px}}

.pp-body.pp-admin-mode .pp-main{padding-left:270px}.pp-body.pp-admin-mode .pp-admin-sidebar{left:0}.pp-body.pp-admin-mode .pp-admin-sidebar~*{margin-left:0}@media(max-width:900px){.pp-body.pp-admin-mode .pp-main{padding-left:0}}

.pp-beta-badge{display:inline-flex;align-items:center;margin-left:.45rem;padding:.18rem .48rem;border-radius:999px;background:#e9f2ff;color:#1f4e79;border:1px solid #c9dcf5;font-size:.67rem;font-weight:850;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle}
.pp-report-summary{display:grid;gap:.35rem;margin:1rem 0}.pp-report-summary p{margin:0}
.pp-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin:1.2rem 0}.pp-detail-grid section,.pp-report-reason{padding:1rem;border:1px solid #dbe7f5;border-radius:14px;background:#f8fbff}.pp-detail-grid h3,.pp-report-reason h3{margin-top:0;color:#0f2f4f}.pp-report-detail>section{margin-top:1rem}
@media(max-width:760px){.pp-detail-grid{grid-template-columns:1fr}.pp-beta-badge{font-size:.6rem}}


/* Ajustements V5 */
.pp-brand-title{display:inline-flex!important;align-items:center;gap:.45rem;padding-left:0!important;border-left:0!important;color:var(--pp-blue);text-decoration:none;white-space:nowrap}
.pp-brand-title .pp-beta-badge{margin-left:0!important;padding:.18rem .48rem!important;border:1px solid #c9dcf5!important}
.pp-admin-search{display:grid;grid-template-columns:minmax(260px,1fr) auto auto;gap:12px;align-items:end;padding:18px;margin:18px 0}
.pp-address-card{display:grid;gap:16px;padding:18px;border:1px solid var(--pp-line);border-radius:16px;background:#f8fbff}
.pp-address-card h2{font-size:1.15rem;margin:0}.pp-map--editor,.pp-map--public{height:380px}.pp-map--editor{cursor:crosshair}.pp-report-decision{width:100%;margin-top:18px}.pp-report-decision textarea{min-height:90px}
@media(max-width:760px){.pp-admin-search{grid-template-columns:1fr}.pp-map--editor,.pp-map--public{height:300px}}
.pp-address-suggestions{display:grid;gap:10px;margin-top:4px}
.pp-address-suggestion{display:block;width:100%;padding:13px 14px;text-align:left;color:#17324d;background:#fff;border:1px solid var(--pp-line);border-radius:12px;cursor:pointer;font:inherit;line-height:1.45;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.pp-address-suggestion:hover,.pp-address-suggestion:focus-visible{border-color:#2563eb;box-shadow:0 8px 20px rgba(37,99,235,.12);transform:translateY(-1px);outline:none}
.pp-address-suggestion strong{display:block;color:#0f2f4f;margin-bottom:3px}
.pp-address-confirm{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid #b8d8c3;border-radius:13px;background:#effaf3;color:#174b2b}
.pp-address-confirm strong{line-height:1.45}
.pp-address-confirm .pp-btn{flex:0 0 auto}
.pp-address-card.is-confirmed{border-color:#75b98b;box-shadow:0 0 0 3px rgba(34,197,94,.09)}
@media(max-width:680px){.pp-address-confirm{align-items:stretch;flex-direction:column}.pp-address-confirm .pp-btn{width:100%}}

.pp-badge--center{background:linear-gradient(135deg,#fff4c4,#ffe18a);color:#6c4d00;border-color:#e4bd42;box-shadow:0 4px 12px rgba(180,130,0,.14)}
.pp-center-admin{display:grid;grid-template-columns:120px 1fr auto;gap:18px;align-items:center}.pp-center-thumb{width:120px;height:90px;object-fit:cover;border-radius:14px}.pp-center-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.pp-center-gallery img{width:100%;height:120px;object-fit:cover;border-radius:12px}.pp-center-public{display:grid;grid-template-columns:220px 1fr;gap:18px;margin-bottom:16px}.pp-center-public img{width:100%;height:180px;object-fit:cover;border-radius:14px}.pp-center-public h3{margin-top:0}.pp-card.pp-ad.pp-ad--svs{position:relative;box-shadow:0 18px 45px rgba(31,78,121,.12)}
@media(max-width:760px){.pp-center-admin,.pp-center-public{grid-template-columns:1fr}.pp-center-thumb{width:100%;height:180px}}
.pp-rating{font-weight:800;color:#0f4f7f}.pp-review{padding:16px 0;border-bottom:1px solid var(--pp-line)}.pp-review:last-child{border-bottom:0}.pp-clean-list{margin:8px 0 18px;padding-left:20px}.pp-schedule{display:grid;grid-template-columns:64px repeat(7,minmax(82px,1fr));gap:6px;overflow:auto;padding:8px 0}.pp-schedule>strong,.pp-hour{display:flex;align-items:center;justify-content:center;min-height:38px;font-size:.78rem}.pp-slot{position:relative;min-height:38px;border:1px solid var(--pp-line);border-radius:9px;background:#fff;cursor:pointer}.pp-slot input{position:absolute;opacity:0}.pp-slot span{display:flex;align-items:center;justify-content:center;height:100%;font-size:.72rem;color:#738295}.pp-slot.is-selected{background:#dcfce7;border-color:#22c55e}.pp-slot.is-selected span{color:#166534;font-weight:850}@media(max-width:760px){.pp-schedule{grid-template-columns:54px repeat(7,78px)}}

/* Annuaire : filtres, modes d'affichage et pagination */
.pp-filterbar--advanced{grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;padding:22px;margin-top:-34px}
.pp-filter-field{display:grid;gap:7px;min-width:0}.pp-filter-field--wide{grid-column:span 2}.pp-filter-field label{font-size:.79rem;font-weight:850;color:#27445f;letter-spacing:.01em}
.pp-filterbar--advanced input[type="text"],.pp-filterbar--advanced input[type="number"],.pp-filterbar--advanced input:not([type]),.pp-filterbar--advanced select{width:100%;min-height:46px;box-sizing:border-box;padding:0 13px;border:1px solid #c8d9ea;border-radius:12px;background:#fff;color:#173953;font:inherit;font-size:.92rem;outline:none;box-shadow:0 1px 2px rgba(15,48,87,.025);transition:border-color .16s ease,box-shadow .16s ease,background .16s ease;appearance:none}
.pp-filterbar--advanced select{padding-right:38px;background-image:linear-gradient(45deg,transparent 50%,#5e7690 50%),linear-gradient(135deg,#5e7690 50%,transparent 50%);background-position:calc(100% - 18px) 19px,calc(100% - 13px) 19px;background-size:5px 5px,5px 5px;background-repeat:no-repeat}
.pp-filterbar--advanced input:hover,.pp-filterbar--advanced select:hover{border-color:#9ebbd6}.pp-filterbar--advanced input:focus,.pp-filterbar--advanced select:focus{border-color:var(--pp-bright);box-shadow:0 0 0 4px rgba(37,99,235,.11);background:#fff}
.pp-filterbar--advanced input::placeholder{color:#8a9aad}.pp-filter-options{grid-column:span 2;display:flex;align-items:center;flex-wrap:wrap;gap:10px}.pp-filter-options .pp-check{min-height:46px;box-sizing:border-box;padding:0 14px;cursor:pointer}.pp-filter-options .pp-check input{width:17px;height:17px;accent-color:var(--pp-bright)}.pp-filter-actions{grid-column:span 2;display:flex;justify-content:flex-end;align-items:end;gap:10px}.pp-filter-actions .pp-btn{min-height:46px}
.pp-directory-section{padding-top:30px}.pp-directory-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px;color:#476176}.pp-view-switch{display:inline-flex;gap:5px;padding:4px;border:1px solid var(--pp-line);border-radius:12px;background:#fff}.pp-view-button{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 11px;border-radius:8px;color:#48647d;text-decoration:none;font-size:.82rem;font-weight:800}.pp-view-button:hover,.pp-view-button.is-active{background:#eaf3ff;color:var(--pp-bright)}
.pp-directory-results{display:grid;gap:16px}.pp-directory-results--grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.pp-directory-results--grid .pp-ad{display:flex;flex-direction:column;align-items:stretch;min-width:0;padding:20px}.pp-directory-results--grid .pp-avatar{width:100%;height:190px;border-radius:15px}.pp-directory-results--grid .pp-ad__content{display:flex;flex:1;flex-direction:column;min-width:0}.pp-directory-results--grid .pp-ad h3{margin-top:12px;font-size:1.08rem;line-height:1.35}.pp-directory-results--grid .pp-ad__meta{display:flex;flex-wrap:wrap;gap:5px;margin:0;color:#536579;font-size:.84rem}.pp-directory-results--grid .pp-ad__description{margin-top:auto}.pp-directory-results--grid .pp-ad__side{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding-top:13px;border-top:1px solid var(--pp-line)}.pp-directory-results--grid .pp-price{font-size:1.05rem}
.pp-directory-results--list .pp-ad{display:grid;grid-template-columns:95px minmax(0,1fr) auto;gap:18px;align-items:center}.pp-directory-results--list .pp-ad__side{display:grid;justify-items:end;gap:12px}.pp-ad h3 a{color:var(--pp-ink);text-decoration:none}.pp-ad h3 a:hover{color:var(--pp-bright)}
.pp-pagination{display:flex;align-items:center;justify-content:center;gap:16px;margin-top:28px}.pp-pagination__button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 14px;border:1px solid #cbdceb;border-radius:11px;background:#fff;color:var(--pp-blue);font-weight:800;text-decoration:none}.pp-pagination__button:hover{border-color:var(--pp-bright);background:#eef6ff}.pp-pagination__button.is-disabled{opacity:.45;cursor:not-allowed}.pp-pagination__status{color:#5c7185;font-size:.9rem}
@media(max-width:980px){.pp-filterbar--advanced{grid-template-columns:repeat(2,minmax(0,1fr))}.pp-filter-field--wide{grid-column:span 2}.pp-directory-results--grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.pp-filterbar--advanced{grid-template-columns:1fr;padding:17px}.pp-filter-field--wide,.pp-filter-options,.pp-filter-actions{grid-column:span 1}.pp-filter-actions{justify-content:stretch;flex-direction:column}.pp-filter-actions .pp-btn{width:100%}.pp-directory-toolbar{align-items:flex-start;flex-direction:column}.pp-directory-results--grid{grid-template-columns:1fr}.pp-directory-results--list .pp-ad{grid-template-columns:76px minmax(0,1fr)}.pp-directory-results--list .pp-ad__side{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;width:100%}.pp-directory-results--list .pp-avatar{width:72px;height:72px}.pp-pagination{gap:8px;flex-wrap:wrap}.pp-pagination__status{order:-1;width:100%;text-align:center}}

/* Gestionnaire pédagogique */
.pp-manager-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:22px}.pp-manager-head h1{margin:.25rem 0}.pp-manager-shell{display:grid;grid-template-columns:245px minmax(0,1fr);gap:22px;align-items:start}.pp-manager-sidebar{position:sticky;top:88px;padding:16px;border:1px solid var(--pp-line);border-radius:18px;background:#fff;box-shadow:0 12px 32px rgba(15,48,87,.07)}.pp-manager-sidebar label{display:block;margin-bottom:7px;font-size:.78rem;font-weight:850;color:#27445f}.pp-manager-sidebar select{width:100%;min-height:44px;padding:0 36px 0 12px;border:1px solid #c8d9ea;border-radius:11px;background:#fff}.pp-manager-sidebar nav{display:grid;gap:5px;margin-top:14px}.pp-manager-sidebar nav a{padding:11px 12px;border-radius:10px;color:#456078;text-decoration:none;font-weight:750}.pp-manager-sidebar nav a:hover,.pp-manager-sidebar nav a.is-active{background:#eaf3ff;color:#1f4e79}.pp-manager-content{min-width:0}.pp-manager-person{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.pp-manager-person div{display:grid;gap:3px}.pp-manager-person span{color:#667d91;font-size:.86rem}.pp-manager-lessons{display:grid;gap:12px}.pp-manager-lessons article{display:grid;grid-template-columns:minmax(180px,1fr) minmax(0,2fr);gap:16px;align-items:center;padding:14px;border:1px solid var(--pp-line);border-radius:13px;background:#f8fbff}.pp-manager-lessons article>div{display:grid;gap:5px}.pp-manager-lessons form{display:grid;grid-template-columns:120px minmax(150px,1fr) auto auto;gap:8px;align-items:center}.pp-manager-lessons input,.pp-manager .pp-form input,.pp-manager .pp-form select,.pp-manager .pp-form textarea{width:100%;box-sizing:border-box}.pp-homework{margin-top:14px}.pp-homework h3{margin-top:0}

/* Renforcement responsive global sans modifier la vue PC */
@media(max-width:760px){
 .pp-top{position:relative;display:flex;align-items:flex-start;flex-direction:column;gap:12px;padding:12px 16px}.pp-top nav{display:flex;width:100%;gap:7px;overflow-x:auto;padding-bottom:4px;scrollbar-width:thin}.pp-top nav a{flex:0 0 auto;white-space:nowrap}.pp-brand{width:100%;min-width:0}.pp-brand img{max-width:120px}.pp-brand-title{font-size:.9rem}
 .pp-main{overflow-x:hidden}.pp-container{width:min(100% - 24px,1180px)}.pp-section{padding:24px 0}.pp-card,.pp-panel{padding:16px;border-radius:15px}
 .pp-grid,.pp-form-grid{grid-template-columns:1fr!important}.pp-actions{align-items:stretch;flex-direction:column}.pp-actions .pp-btn,.pp-actions form,.pp-actions form .pp-btn{width:100%}
 table{display:block;max-width:100%;overflow-x:auto;white-space:nowrap}.pp-tabs{display:flex;overflow-x:auto;gap:6px;padding-bottom:5px}.pp-tabs a{flex:0 0 auto;white-space:nowrap}
 .pp-manager-shell{grid-template-columns:1fr}.pp-manager-sidebar{position:static}.pp-manager-sidebar nav{display:flex;overflow-x:auto}.pp-manager-sidebar nav a{flex:0 0 auto;white-space:nowrap}.pp-manager-person{align-items:flex-start;flex-direction:column}.pp-manager-lessons article{grid-template-columns:1fr}.pp-manager-lessons form{grid-template-columns:1fr}.pp-manager-lessons form .pp-btn{width:100%}
 .pp-chat-head{align-items:flex-start}.pp-thread{max-height:52vh}.pp-message{max-width:92%}.pp-address-card,.pp-filterbar--advanced{padding:15px}.leaflet-container{max-width:100%}
}
@media(max-width:430px){.pp-container{width:min(100% - 16px,1180px)}.pp-card,.pp-panel{padding:13px}.pp-btn{min-height:44px}.pp-avatar{flex:0 0 auto}.pp-beta-badge{font-size:.55rem;padding:.12rem .35rem!important}}

/* Gestionnaire v12 — calendrier hebdomadaire et discussions multi-participants */
.pp-calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:16px}.pp-calendar-toolbar h2{margin:0}.pp-calendar-nav{display:flex;flex-wrap:wrap;gap:8px}.pp-calendar-filter{margin-bottom:16px}.pp-filter-people{display:flex;flex-wrap:wrap;gap:10px 18px;margin:14px 0}.pp-week-wrap{overflow:auto;border:1px solid #dbe7f5;border-radius:18px;background:#fff;box-shadow:0 12px 32px rgba(15,48,87,.07)}.pp-week-calendar{min-width:1120px;display:grid;grid-template-columns:76px repeat(7,minmax(140px,1fr));grid-template-rows:64px repeat(36,28px);position:relative;background:repeating-linear-gradient(to bottom,transparent 0,transparent 27px,#edf2f7 28px),repeating-linear-gradient(to right,transparent 0,transparent calc(12.5% - 1px),#edf2f7 12.5%)}.pp-week-corner,.pp-week-day{position:sticky;top:0;z-index:5;background:#f7fbff;border-bottom:1px solid #dbe7f5;display:flex;align-items:center;justify-content:center}.pp-week-corner{grid-column:1;grid-row:1;font-weight:800;color:#536579}.pp-week-day{flex-direction:column;gap:3px;color:#0f2f4f}.pp-week-day span{font-size:.78rem;color:#6b7d90}.pp-week-hour{grid-column:1;z-index:2;padding:5px 8px 0;text-align:right;color:#6b7d90;font-size:.74rem;background:#fff;border-right:1px solid #dbe7f5}.pp-cal-event{z-index:3;margin:2px 4px;padding:6px 7px;border:1px solid transparent;border-radius:9px;text-align:left;overflow:hidden;cursor:pointer;display:flex;flex-direction:column;gap:2px;box-shadow:0 4px 10px rgba(15,48,87,.12);font:inherit}.pp-cal-event strong{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pp-cal-event span,.pp-cal-event small{font-size:.68rem}.pp-cal-event--scheduled{background:#e8f1ff;border-color:#9ec5ff;color:#123c66}.pp-cal-event--rescheduled{background:#fff4d6;border-color:#f3c969;color:#6f4b00}.pp-cal-event--completed{background:#e7f8ed;border-color:#8dd3a5;color:#175c2d}.pp-cal-event--late{background:#fff0df;border-color:#f4ad62;color:#7a3c00}.pp-cal-event--cancelled,.pp-cal-event--no_show{background:#fdeaea;border-color:#ec9b9b;color:#7b1e1e}.pp-calendar-legend{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 20px}.pp-calendar-legend span{padding:6px 10px;border-radius:999px;font-size:.76rem;font-weight:800}.pp-calendar-legend .is-scheduled{background:#e8f1ff}.pp-calendar-legend .is-rescheduled{background:#fff4d6}.pp-calendar-legend .is-completed{background:#e7f8ed}.pp-calendar-legend .is-late{background:#fff0df}.pp-calendar-legend .is-cancelled,.pp-calendar-legend .is-no_show{background:#fdeaea}.pp-dialog{width:min(760px,calc(100% - 24px));max-height:90vh;overflow:auto;border:0;border-radius:20px;padding:0;box-shadow:0 24px 70px rgba(15,48,87,.28)}.pp-dialog::backdrop{background:rgba(15,35,55,.48)}.pp-dialog .pp-form{padding:24px}.pp-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.pp-dialog-head h2{margin:4px 0 16px}.pp-dialog-close{border:0;background:#eef4fa;border-radius:50%;width:38px;height:38px;font-size:1.4rem;cursor:pointer}.pp-chat-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.pp-chat-tabs a{padding:9px 12px;border-radius:10px;background:#eef4fa;color:#24445f;text-decoration:none;font-weight:750}.pp-chat-tabs a.is-active{background:#1f4e79;color:#fff}.pp-chat-context{display:flex;flex-direction:column;gap:4px;padding:12px 14px;background:#f7fbff;border-left:4px solid #2563eb;border-radius:10px;margin-bottom:14px}.pp-chat-context span{color:#607386;font-size:.86rem}
@media(max-width:760px){.pp-calendar-toolbar{align-items:flex-start;flex-direction:column}.pp-calendar-nav{width:100%}.pp-calendar-nav .pp-btn{flex:1 1 45%;font-size:.78rem;padding:9px}.pp-week-calendar{min-width:980px;grid-template-columns:62px repeat(7,130px)}.pp-week-wrap{border-radius:12px}.pp-calendar-filter .pp-filter-people{display:grid;grid-template-columns:1fr 1fr}.pp-dialog .pp-form{padding:18px}.pp-chat-tabs{display:grid;grid-template-columns:1fr}.pp-chat-tabs a{text-align:center}}
.pp-private-note{padding:10px 12px;background:#f3f0ff;border-left:4px solid #7559c7;border-radius:8px;color:#493780}
.pp-cal-participant{font-weight:800;font-size:.69rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.pp-lesson-participants{margin:2px 0 0;color:#536579;font-weight:700}.pp-lesson-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0 0 18px}.pp-lesson-meta>div{display:grid;gap:4px;padding:12px;border:1px solid #dbe7f5;border-radius:12px;background:#f8fbff}.pp-lesson-meta strong{font-size:.76rem;color:#607386;text-transform:uppercase;letter-spacing:.03em}.pp-lesson-meta span{font-weight:800;color:#173f63}.pp-lesson-readonly{display:grid;gap:10px;padding:14px;border:1px solid #dbe7f5;border-radius:12px;background:#f8fbff}.pp-lesson-readonly p{margin:0}@media(max-width:600px){.pp-lesson-meta{grid-template-columns:1fr}.pp-cal-event strong,.pp-cal-participant{white-space:normal;line-height:1.15}}

/* Remises de devoirs : plusieurs fichiers et liens */
.pp-submission-summary{display:grid;gap:14px;margin:16px 0;padding:16px;border:1px solid #dbe7f5;border-radius:14px;background:#f8fbff}
.pp-submission-summary p{margin:0}
.pp-submission-items{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.pp-submission-links{display:grid;gap:7px;margin-top:8px}
.pp-submission-links a{overflow-wrap:anywhere;color:#1f5fbf;font-weight:700}
.pp-field-hint{display:inline-flex;margin-left:7px;padding:3px 7px;border-radius:999px;background:#e8f1ff;color:#1f4e79;font-size:.75rem;font-weight:800}
.pp-submission-form input[type=file]{padding:10px;background:#fff}
.pp-submission-form small{display:block;margin-top:6px;color:#64748b;line-height:1.45}
@media(max-width:640px){.pp-submission-items{display:grid}.pp-submission-items .pp-btn{width:100%;white-space:normal}.pp-submission-summary{padding:13px}}

.pp-cal-visio{display:inline-flex;align-items:center;width:max-content;padding:2px 7px;border-radius:999px;background:rgba(255,255,255,.2);font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.pp-submission-items{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.pp-submission-items small{display:block;width:100%;color:#64748b}.pp-lesson-readonly #dlg_video_row{margin:14px 0}.pp-lesson-readonly #dlg_preparation_row{padding:12px;border-radius:12px;background:#f7fbff;border:1px solid #dbe7f5}

/* Partage profil / annonce */
.pp-share{position:relative;display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:14px}
.pp-share__main{min-height:42px}
.pp-share__menu{position:absolute;z-index:80;top:calc(100% + 8px);left:0;min-width:210px;padding:8px;background:#fff;border:1px solid #dbe7f5;border-radius:14px;box-shadow:0 18px 45px rgba(15,48,87,.16)}
.pp-share__menu[hidden]{display:none}
.pp-share__item{display:flex;width:100%;align-items:center;padding:10px 12px;color:#173b5f;background:transparent;border:0;border-radius:9px;font:inherit;font-weight:700;text-align:left;text-decoration:none;cursor:pointer}
.pp-share__item:hover,.pp-share__item:focus-visible{background:#eef6ff;color:#1f4e79;outline:none}
.pp-share__feedback{font-size:.82rem;font-weight:700;color:#2a7f38}
.pp-actions .pp-share{margin-top:0}
.pp-actions .pp-share__main{min-height:36px;padding:8px 11px;font-size:.82rem}
@media(max-width:620px){.pp-share{display:flex;width:100%}.pp-share__main{width:100%}.pp-share__menu{position:static;width:100%;min-width:0}.pp-share__item{min-height:44px}}


/* Demandes parentales multi-enfants */
.pp-contact-request{display:grid;gap:12px;width:100%}
.pp-child-picker{display:grid;gap:9px;margin:0;padding:14px;border:1px solid #dbe7f5;border-radius:14px;background:#f8fbff}
.pp-child-picker legend{padding:0 6px;color:#173f63;font-weight:850}
.pp-child-picker .pp-muted{margin:0 0 4px;font-size:.86rem}
.pp-child-option{display:flex;align-items:center;gap:11px;padding:10px 12px;border:1px solid #dbe7f5;border-radius:11px;background:#fff;cursor:pointer}
.pp-child-option:hover{border-color:#8fb9eb;background:#f5f9ff}
.pp-child-option input{width:19px;height:19px;accent-color:#2563eb}
.pp-child-option span{display:grid;gap:2px}.pp-child-option small{color:#667d91}
.pp-student-request-panel{margin:18px 0;padding:18px;border:1px solid #dbe7f5;border-radius:16px;background:#f8fbff}
.pp-student-request-panel h2{margin:0 0 5px;font-size:1.15rem;color:#173f63}
.pp-student-request-list{display:grid;gap:10px;margin-top:13px}
.pp-student-request{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 14px;border:1px solid #dbe7f5;border-radius:12px;background:#fff}
.pp-student-request>div:first-child{display:grid;gap:3px}.pp-student-request>div:first-child span{font-size:.84rem;color:#667d91}
.pp-student-request--active{border-left:4px solid #2a9d55}.pp-student-request--refused{border-left:4px solid #d45a5a}.pp-student-request--pending{border-left:4px solid #e4a72f}
.pp-status--pending{background:#fff4d6;color:#6f4b00}.pp-status--active{background:#e7f8ed;color:#175c2d}.pp-status--refused{background:#fdeaea;color:#7b1e1e}
.pp-form--compact{margin-top:14px;padding-top:14px;border-top:1px solid #dbe7f5}
@media(max-width:720px){.pp-student-request{grid-template-columns:1fr}.pp-student-request .pp-actions{display:grid;grid-template-columns:1fr 1fr}.pp-student-request .pp-actions form,.pp-student-request .pp-actions button{width:100%}}

/* V24 — calendrier intégral, chevauchements et rappels */
.pp-course-reminder{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px clamp(16px,4vw,40px);background:#fff8dd;border-bottom:1px solid #efd98b;color:#654b00}.pp-course-reminder div{display:flex;flex-direction:column;gap:2px}.pp-course-reminder span{font-size:.82rem}.pp-course-reminder a{flex:0 0 auto;color:#1f4e79;font-weight:850;text-decoration:none}.pp-week-wrap{width:100%;max-width:100%;overflow:visible}.pp-week-calendar{width:100%;min-width:0;grid-template-columns:58px repeat(7,minmax(0,1fr));}.pp-cal-event{min-width:0;width:calc((100% - 8px)/var(--pp-overlap-count,1));margin-left:calc((100%/var(--pp-overlap-count,1))*var(--pp-overlap-index,0) + 4px);margin-right:0}.pp-cal-event--overlap{padding:5px 4px}.pp-cal-event--overlap strong,.pp-cal-event--overlap .pp-cal-participant{white-space:normal;font-size:.68rem!important;line-height:1.08}.pp-overlap-badge{position:absolute;right:3px;top:3px;display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:18px;padding:0 4px;border-radius:999px;background:rgba(15,47,79,.82);color:#fff;font-size:.61rem;font-style:normal;font-weight:900}.pp-cal-event{position:relative}
@media(max-width:1100px) and (min-width:761px){.pp-week-calendar{grid-template-columns:52px repeat(7,minmax(0,1fr));}.pp-week-day strong{font-size:.76rem}.pp-cal-event{padding:4px 3px}.pp-cal-event strong{font-size:.7rem}.pp-cal-event span,.pp-cal-event small{font-size:.61rem}.pp-cal-participant{font-size:.62rem!important}}
@media(max-width:760px){.pp-week-wrap{overflow-x:auto}.pp-week-calendar{min-width:980px;grid-template-columns:62px repeat(7,130px)}.pp-course-reminder{align-items:flex-start;flex-direction:column}.pp-course-reminder a{width:100%;text-align:center;padding:8px 10px;border-radius:9px;background:#fff;border:1px solid #efd98b}}

/* V25 — regroupement des cours simultanés et choix du type de créneau */
.pp-cal-event--group{justify-content:center;align-items:flex-start;border-width:2px;background:linear-gradient(135deg,#e8f1ff,#f8fbff)}
.pp-cal-event--group .pp-overlap-badge{min-width:25px}
.pp-dialog--compact{width:min(620px,calc(100% - 24px))}
.pp-lesson-group-list{display:grid;gap:10px;margin-top:16px}
.pp-lesson-person{width:100%;display:grid;gap:4px;padding:14px 16px;text-align:left;border:1px solid #dbe7f5;border-radius:13px;background:#f8fbff;color:#173b5c;cursor:pointer;font:inherit;transition:.16s ease}
.pp-lesson-person:hover,.pp-lesson-person:focus-visible{background:#eef6ff;border-color:#8eb9e7;transform:translateY(-1px);outline:0}
.pp-lesson-person strong{font-size:.95rem}.pp-lesson-person span{font-size:.8rem;color:#536579}.pp-lesson-person small{font-size:.74rem;color:#6e8092}
.pp-choice-row{display:flex;flex-wrap:wrap;gap:10px}.pp-choice{display:inline-flex;align-items:center;gap:8px;padding:10px 13px;border:1px solid #dbe7f5;border-radius:11px;background:#f8fbff;font-weight:750;cursor:pointer}.pp-choice:has(input:checked){background:#e7f8ed;border-color:#8dd3a5;color:#175c2d}
@media(max-width:620px){.pp-choice-row{display:grid;grid-template-columns:1fr}.pp-choice{width:100%}}
