/* Covoiturage PDD 1.4 — même présentation que les autres pages PDD (Album photos, Petites annonces). */

/* Page pleine largeur (gabarit du plugin, thème Divi) */
.pdd-covoiturage-fullwidth-main{width:100%!important;max-width:none!important;margin:0!important;padding:28px 18px 60px!important;border:0!important;float:none!important;box-sizing:border-box;min-height:60vh}
body.pdd-covoiturage-page #main-content,body.pdd-covoiturage-page .container,body.pdd-covoiturage-page #left-area{width:100%!important;max-width:none!important}
body.pdd-covoiturage-page #left-area{padding:0!important;float:none!important}
body.pdd-covoiturage-page #sidebar,body.pdd-covoiturage-page #main-content .container:before{display:none!important}
body.pdd-covoiturage-page,body.pdd-covoiturage-page #page-container,body.pdd-covoiturage-page #et-main-area,body.pdd-covoiturage-page #main-content{background:#eef4e8!important}
body.pdd-covoiturage-page #main-content{padding-top:0!important;margin-top:0!important}

.pdd-cov{--c-g800:#244d30;--c-g700:#397342;--c-g600:#4c6b49;--c-g400:#86aa79;--c-g200:#d6e4cf;--c-g100:#eaf2e2;--c-g50:#f6faf3;--c-border:#dce6d5;--c-text:#27312b;--c-muted:#60705f;--c-faint:#8a968c;color:var(--c-text);font-size:15px;line-height:1.55}
.pdd-cov *{box-sizing:border-box}
.pdd-cov-inner{max-width:1100px;margin:0 auto;display:grid;gap:20px}
.pdd-cov h1,.pdd-cov h2{font-family:Georgia,"Times New Roman",serif;color:var(--c-g800);margin:0;padding:0;line-height:1.2}
.pdd-cov h2{font-size:24px}
.pdd-cov-card{background:#fff;border:1px solid var(--c-border);border-radius:22px;padding:24px;box-shadow:0 8px 28px rgba(52,85,42,.06)}
.pdd-cov-sub{margin:4px 0 16px;color:var(--c-muted)}
.pdd-cov .req{color:#c6453a}
.pdd-cov .screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}

/* Boutons */
.pdd-cov-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:9px 16px!important;border:1px solid #c5d5bd!important;border-radius:999px!important;background:#fff!important;color:var(--c-g800)!important;font:600 14px/1.2 inherit!important;text-decoration:none!important;cursor:pointer;white-space:nowrap}
.pdd-cov-btn:hover{border-color:var(--c-g700)!important;background:var(--c-g50)!important}
.pdd-cov-btn.is-primary{background:var(--c-g600)!important;border-color:var(--c-g600)!important;color:#fff!important}
.pdd-cov-btn.is-primary:hover{background:var(--c-g800)!important}
.pdd-cov-btn[hidden]{display:none}
.pdd-cov-link{border:0;background:none;padding:0;font:700 13px inherit;color:var(--c-g700);text-decoration:underline;cursor:pointer}
.pdd-cov-badge{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#c6453a;color:#fff;font-size:12px;font-weight:800;line-height:1}
.pdd-cov-chip{display:inline-flex;align-items:center;gap:5px;padding:5px 11px;border:1px solid var(--c-border);border-radius:999px;background:#fff;font:600 13px inherit;color:var(--c-g800);cursor:pointer}
.pdd-cov-chip:hover{border-color:var(--c-g400);background:var(--c-g50)}

/* En-tête */
.pdd-cov-head{display:flex;align-items:flex-end;gap:16px;flex-wrap:wrap}
.pdd-cov-head > div:first-child{flex:1;min-width:240px}
.pdd-cov-head h1{font-size:clamp(30px,4vw,38px)}
.pdd-cov-head p{margin:6px 0 0;color:var(--c-muted);font-size:16px}
.pdd-cov-head-actions{display:flex;gap:8px;flex-wrap:wrap}
.pdd-cov-notice{margin-top:14px;padding:12px 16px;border-radius:14px;background:#fbe9e7;color:#9b3a31;font-weight:600}
.pdd-cov-notice.is-ok{background:var(--c-g100);color:var(--c-g800)}
.pdd-cov-gate{display:grid;gap:12px;justify-items:start;margin-top:18px;padding:18px;border-radius:16px;background:var(--c-g50);border:1px solid var(--c-border)}
.pdd-cov-gate p{margin:0}

/* Semaine */
.pdd-cov-week{display:grid;grid-template-columns:auto repeat(7,minmax(0,1fr)) auto;gap:6px;margin-top:18px}
.pdd-cov-week-nav{display:grid;place-items:center;padding:0 10px;border:1px solid var(--c-border);border-radius:12px;background:#fff;color:var(--c-g800)!important;font-size:20px;text-decoration:none!important}
.pdd-cov-week-nav.is-off{opacity:.3}
.pdd-cov .pdd-week-day{display:grid;gap:1px;justify-items:center;padding:8px 4px;border:1px solid var(--c-border);border-radius:12px;background:#fff;color:var(--c-muted);font:12px/1.3 inherit;cursor:pointer}
.pdd-cov .pdd-week-day b{font:700 19px Georgia,serif;color:var(--c-g800)}
.pdd-cov .pdd-week-day i{font-style:normal;font-size:11px;font-weight:800;color:var(--c-g700)}
.pdd-cov .pdd-week-day.no-trips{opacity:.5}
.pdd-cov .pdd-week-day.is-active{background:var(--c-g800);border-color:var(--c-g800);color:#d6e4cf;opacity:1}
.pdd-cov .pdd-week-day.is-active b,.pdd-cov .pdd-week-day.is-active i{color:#fff}
.pdd-cov-empty{margin:16px 0 0;padding:20px;border:1px dashed var(--c-g200);border-radius:16px;text-align:center;color:var(--c-muted)}

/* Trajets */
.pdd-cov-trips{display:grid;gap:10px;margin-top:16px}
.pdd-cov-trip{border:1px solid var(--c-border);border-radius:18px;background:#fff;overflow:hidden}
.pdd-cov-trip[hidden]{display:none}
.pdd-cov-trip-row{display:grid;grid-template-columns:72px minmax(0,1fr) auto;gap:14px;align-items:center;width:100%;padding:14px 16px;border:0;background:none;text-align:left;font:inherit;color:inherit;cursor:pointer}
.pdd-cov-trip-row:hover{background:var(--c-g50)}
.pdd-cov-trip.is-expanded .pdd-cov-trip-row{background:var(--c-g50)}
.pdd-cov-time{font:700 24px Georgia,serif;color:var(--c-g800);text-align:center}
.pdd-cov-route{display:grid;gap:4px;position:relative;padding-left:18px;min-width:0}
.pdd-cov-route:before{content:"";position:absolute;left:5px;top:10px;bottom:10px;width:2px;background:var(--c-g200)}
.pdd-cov-route span{position:relative;font-weight:700;color:#1f2d20;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pdd-cov-route span:before{content:"";position:absolute;left:-17px;top:7px;width:10px;height:10px;border-radius:50%;background:#fff;border:2px solid var(--c-g600)}
.pdd-cov-route span:last-child:before{background:var(--c-g600)}
.pdd-cov-side{display:grid;justify-items:end;gap:6px}
.pdd-cov-driver{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--c-muted)}
.pdd-cov-driver img{width:32px;height:32px;border-radius:50%;object-fit:cover;background:var(--c-g200)}
.pdd-cov-seats{display:flex;gap:3px;align-items:center;font-size:12px;color:var(--c-muted)}
.pdd-cov-seats i{width:10px;height:10px;border-radius:3px;background:var(--c-g600)}
.pdd-cov-seats i.is-used{background:#dfe6da}
.pdd-cov-tags{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end}
.pdd-cov-tag{display:inline-block;padding:2px 8px;border-radius:999px;background:var(--c-g50);border:1px solid var(--c-border);font-size:11px;font-weight:700;color:var(--c-g800)}
.pdd-cov-tag.is-rec{background:#eef2f6;color:#3d5366;border-color:#dde3e8}
.pdd-cov-tag.is-ok{background:#e3f1dc;color:#2f6a2c}
.pdd-cov-trip-exp{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:16px;padding:16px;border-top:1px solid #edf2ea}
.pdd-cov-trip-exp[hidden]{display:none}
.pdd-cov-map{min-height:260px;border-radius:14px;overflow:hidden;background:var(--c-g50)}
.pdd-cov-map .pdd-map-loading{display:grid;place-items:center;min-height:260px;color:var(--c-muted);font-size:13px}
.pdd-cov-map .leaflet-container,.pdd-cov-map .pdd-google-route-frame{width:100%;height:260px;border:0}
.pdd-cov-trip-info{position:relative;display:grid;gap:10px;align-content:start}
.pdd-cov-close{position:absolute;top:-4px;right:-4px;width:32px;height:32px;border:1px solid var(--c-border);border-radius:50%;background:#fff;cursor:pointer}
.pdd-cov-when{color:var(--c-g800);padding-right:36px}
.pdd-cov-prefs{display:flex;gap:6px;flex-wrap:wrap}
.pdd-cov-prefs span{padding:4px 9px;border-radius:10px;background:var(--c-g50);font-size:12px}
.pdd-cov-comment{margin:0;font-size:14px;color:#3d4a40}
.pdd-cov-book form{display:grid;gap:10px;padding:14px;border-radius:14px;background:var(--c-g50);border:1px solid var(--c-border)}
.pdd-cov-book small{color:var(--c-faint)}
.pdd-cov-book .pdd-detour-request{display:grid;gap:10px}
.pdd-cov-book .pdd-detour-request[hidden],.pdd-cov-book .pdd-detour-address[hidden]{display:none}
.pdd-cov-book .pdd-detour-address{display:grid;gap:4px;font-size:13px;font-weight:600}
.pdd-cov-book .pdd-detour-submit-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}

/* Alerte */
.pdd-cov-alert{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:12px;align-items:center;margin-top:16px;padding:14px 16px;border-radius:16px;background:#fff4dc;color:#7a5300}
.pdd-cov-alert .ic{font-size:24px}
.pdd-cov-alert b{color:#5a3e00}
.pdd-cov-alert-box{grid-column:1/-1;padding:12px;border-radius:12px;background:#fff;color:var(--c-text)}
.pdd-cov-alert-box[hidden]{display:none}
.pdd-cov-alert-box small{display:block;margin-top:6px;color:var(--c-faint)}
.pdd-cov-alert-form{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap;margin:0}
.pdd-cov-alert-form label{display:grid;gap:4px;font-size:13px;font-weight:700;color:var(--c-g800)}
.pdd-cov-alert-form label[hidden]{display:none}
.pdd-cov-alert-form input,.pdd-cov-alert-form select{min-width:150px}

/* Champs */
.pdd-cov input:not([type=radio]):not([type=checkbox]):not([type=hidden]),.pdd-cov select,.pdd-cov textarea{width:100%;padding:10px 13px!important;border:1px solid #cfd9c9!important;border-radius:12px!important;background:#fff!important;font:15px/1.4 inherit!important;color:var(--c-text)!important;box-shadow:none!important}
.pdd-cov input:focus,.pdd-cov select:focus,.pdd-cov textarea:focus{outline:2px solid var(--c-g400);border-color:var(--c-g400)!important}
.pdd-cov-seg{display:flex;gap:6px;flex-wrap:wrap}
.pdd-cov-seg label{position:relative;cursor:pointer;margin:0}
.pdd-cov-seg input{position:absolute;opacity:0;pointer-events:none}
.pdd-cov-seg span{display:inline-block;padding:6px 13px;border:1px solid var(--c-border);border-radius:999px;background:#fff;font-size:13px;font-weight:600;color:var(--c-g800)}
.pdd-cov-seg input:checked + span{border-color:var(--c-g700);background:var(--c-g100);box-shadow:inset 0 0 0 1px var(--c-g700)}
.pdd-cov-seg input:focus-visible + span{outline:2px solid var(--c-g700);outline-offset:2px}
.pdd-cov-seg label.is-disabled{opacity:.4;cursor:not-allowed}

/* Proposer */
.pdd-cov-share{position:relative}
.pdd-cov-share[hidden]{display:none}
.pdd-cov-share-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border:1px solid var(--c-border);border-radius:50%;background:#fff;color:var(--c-muted);cursor:pointer}
.pdd-cov-steps-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 18px;padding:0;list-style:none}
.pdd-cov-steps-nav li{display:flex;align-items:center;gap:8px;margin:0;padding:8px 12px;border-radius:12px;background:var(--c-g50);font-size:13px;font-weight:700;color:var(--c-faint);list-style:none}
.pdd-cov-steps-nav li i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#fff;color:var(--c-g800);font-style:normal}
.pdd-cov-steps-nav li.is-on{background:var(--c-g800);color:#fff}
.pdd-cov-steps-nav li.is-done{color:var(--c-g700)}
.pdd-cov-step{margin:0;padding:0;border:0;min-width:0}
.pdd-cov-step[hidden]{display:none}
.pdd-cov-grid2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.pdd-cov-field{display:block;margin:0 0 14px;padding:0;border:0;min-width:0}
.pdd-cov-field[hidden]{display:none!important}
.pdd-cov-field > label,.pdd-cov-field > legend,.pdd-cov-label{display:block;margin:0 0 6px;padding:0;font-weight:700;color:var(--c-g800)}
.pdd-cov-field label small{font-weight:500;color:var(--c-faint)}
.pdd-cov-field > small{display:block;margin-top:4px;color:var(--c-faint);font-size:12px}
.pdd-cov-quick{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.pdd-cov .pdd-time-selects{display:flex;gap:6px;max-width:240px}
.pdd-cov-days{display:flex;gap:5px;flex-wrap:wrap}
.pdd-cov-days label{position:relative;cursor:pointer;margin:0}
.pdd-cov-days input{position:absolute;opacity:0;pointer-events:none}
.pdd-cov-days span{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--c-border);border-radius:50%;background:#fff;font-weight:800;color:var(--c-g800)}
.pdd-cov-days input:checked + span{background:var(--c-g700);border-color:var(--c-g700);color:#fff}
.pdd-cov-days input:focus-visible + span{outline:2px solid var(--c-g700);outline-offset:2px}
.pdd-cov .pdd-recurring-preview{margin-top:6px;font-size:13px;color:var(--c-muted)}
.pdd-cov-prefs-pick{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.pdd-cov-prefs-pick label{position:relative;cursor:pointer;margin:0}
.pdd-cov-prefs-pick input{position:absolute;opacity:0;pointer-events:none}
.pdd-cov-prefs-pick span{display:grid;justify-items:center;gap:2px;padding:10px 6px;border:1px solid var(--c-border);border-radius:12px;background:#fff;font-size:12px;font-weight:600;color:var(--c-g800);text-align:center}
.pdd-cov-prefs-pick b{font-size:20px}
.pdd-cov-prefs-pick input:checked + span{border-color:var(--c-g700);background:var(--c-g100);box-shadow:inset 0 0 0 1px var(--c-g700)}
.pdd-cov-yn{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid #edf2ea;font-size:14px}
.pdd-cov-yn small{display:block;color:var(--c-faint);font-size:12px}
.pdd-cov-toggle{display:inline-flex;flex:none;overflow:hidden;border:1px solid #c5d5bd;border-radius:999px}
.pdd-cov-toggle label{cursor:pointer;margin:0}
.pdd-cov-toggle input{position:absolute;opacity:0;pointer-events:none}
.pdd-cov-toggle span{display:block;padding:5px 13px;font-size:12px;font-weight:700;color:var(--c-muted)}
.pdd-cov-toggle input:checked + span{background:var(--c-g700);color:#fff}
.pdd-cov-steps-actions{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:6px}
.pdd-cov-steps-actions [data-cov-next],.pdd-cov-steps-actions [data-cov-submit]{margin-left:auto}
.pdd-cov-success{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center}
.pdd-cov-success-ic{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;background:var(--c-g100);font-size:34px}
.pdd-cov-success p{margin:6px 0 0;color:var(--c-muted)}
.pdd-cov-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px!important}

/* Suggestions d'adresses (script existant) */
.pdd-cov .pdd-address-autocomplete,.pdd-cov-me .pdd-address-autocomplete{position:relative;display:block}
.pdd-address-suggestions{position:absolute;z-index:50;top:calc(100% + 4px);left:0;right:0;display:grid;max-height:280px;overflow:auto;padding:6px;background:#fff;border:1px solid #dfe6dc;border-radius:12px;box-shadow:0 14px 34px rgba(35,55,35,.16)}
.pdd-address-suggestions[hidden]{display:none}
.pdd-address-suggestion{padding:8px 10px;border:0;border-radius:8px;background:transparent;text-align:left;font:14px/1.35 inherit;color:#27312b;cursor:pointer}
.pdd-address-suggestion:hover,.pdd-address-suggestion:focus{background:#eaf2e2}
.pdd-address-attribution{padding:4px 10px 2px;font-size:11px;color:#8a968c}

.pdd-scroll-top{position:fixed;right:16px;bottom:16px;z-index:50;width:44px;height:44px;border:0;border-radius:50%;background:#4c6b49;color:#fff;font-size:20px;opacity:0;pointer-events:none;transition:opacity .2s;cursor:pointer}
.pdd-scroll-top.is-visible{opacity:1;pointer-events:auto}

@media(max-width:820px){
  .pdd-cov-trip-exp,.pdd-cov-grid2{grid-template-columns:minmax(0,1fr)}
  .pdd-cov-trip-row{grid-template-columns:58px minmax(0,1fr)}
  .pdd-cov-side{grid-column:1/-1;justify-items:start;grid-template-columns:auto auto;align-items:center;justify-content:space-between}
  .pdd-cov-tags{grid-column:1/-1;justify-content:flex-start}
  .pdd-cov-week{grid-template-columns:repeat(7,minmax(0,1fr))}
  .pdd-cov-week-nav{display:none}
  .pdd-cov-steps-nav{grid-template-columns:minmax(0,1fr)}
  .pdd-cov-steps-nav li:not(.is-on){display:none}
  .pdd-cov-prefs-pick{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .pdd-covoiturage-fullwidth-main{padding:16px 12px 40px!important}
  .pdd-cov-card{padding:18px;border-radius:18px}
  .pdd-cov .pdd-week-day{padding:6px 2px}
  .pdd-cov .pdd-week-day i{font-size:10px}
  .pdd-cov-alert{grid-template-columns:auto minmax(0,1fr)}
  .pdd-cov-alert > .pdd-cov-btn{grid-column:1/-1}
  .pdd-cov-success{grid-template-columns:minmax(0,1fr)}
}
