/* Finition 2026-09-20 : densité, lisibilité mobile et hiérarchie cohérente. */
:root{
  --vsc-space-1:.35rem;
  --vsc-space-2:.6rem;
  --vsc-space-3:.9rem;
  --vsc-space-4:1.2rem;
  --vsc-radius:16px;
  --vsc-touch:44px;
}
html{overflow-x:hidden;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{overflow-x:hidden;font-size:clamp(.875rem,.84rem + .16vw,.96rem)}
button,input,select,textarea{font:inherit}
.page h1{font-size:clamp(1.45rem,1.14rem + 1.25vw,2.15rem);line-height:1.18}
.page h2{font-size:clamp(1.12rem,1rem + .52vw,1.45rem);line-height:1.25}
.page h3{font-size:clamp(.96rem,.9rem + .25vw,1.12rem);line-height:1.3}
.page p,.page li,.page label{line-height:1.55}
.btn,.adm-tab,.ev-filter-btn{min-height:var(--vsc-touch)}
.btn:focus-visible,.adm-tab:focus-visible,.ev-filter-btn:focus-visible,
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(244,128,58,.34);outline-offset:2px
}

/* Les actions restent dans le flux : aucune barre principale collée au viewport. */
.event-detail-card .ev-card-actions{
  position:relative!important;inset:auto!important;z-index:auto!important;
  margin-top:.55rem!important;padding:.72rem!important;
  background:#fff!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important;
  box-shadow:none!important;border:1px solid #e3e7ed!important;border-radius:17px!important
}
.event-detail-card .ev-card-actions button,.event-detail-card .ev-card-actions a{
  min-height:46px!important;padding:.62rem .75rem!important;font-size:.84rem!important
}
.event-detail-card .ev-card-actions .btn-join-main,
.event-detail-card .ev-card-actions .ev-route-main{font-size:.92rem!important}

/* Modales : même géométrie, scroll interne et arrière-plan inerte visuellement. */
.overlay,.modal-ov,.event-detail-overlay,.member-public-overlay{overscroll-behavior:contain}
.overlay.open,.modal-ov.open,.event-detail-overlay.open,.member-public-overlay.open{isolation:isolate}
.modal,.event-detail-panel,.member-public-modal{
  box-sizing:border-box;min-width:0;max-width:min(720px,calc(100vw - 1rem));
  max-height:calc(100dvh - 1rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));
  overflow:hidden
}
.event-detail-panel{display:flex;min-height:0;flex-direction:column}
.modal-body,.event-detail-content,#member-public-body{
  min-width:0;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch
}
.event-detail-content{flex:1 1 auto;min-height:0;touch-action:pan-y pinch-zoom}
.modal *,.event-detail-panel *,.member-public-modal *{box-sizing:border-box;min-width:0}
.modal p,.modal span,.event-detail-panel p,.event-detail-panel span,.member-public-modal p,.member-public-modal span{
  overflow-wrap:anywhere
}
#modal-ins{z-index:9820!important}
.member-public-overlay{z-index:9940!important}
.member-public-modal{z-index:1!important;width:min(620px,calc(100vw - 1rem))!important}
body.participants-open .event-detail-overlay{pointer-events:none!important}

/* Événements : informations essentielles compactes mais toujours lisibles. */
#page-evenements .wrap{padding-inline:clamp(.6rem,2.5vw,1.15rem)}
#page-evenements .ev-discovery-card{border-radius:18px!important}
#page-evenements .ev-discovery-main{gap:.32rem!important}
#page-evenements .ev-discovery-title{font-size:clamp(.96rem,.91rem + .22vw,1.08rem)!important}
#page-evenements .ev-discovery-meta,
#page-evenements .ev-discovery-capacity,
#page-evenements .ev-discovery-community{font-size:.78rem!important;line-height:1.42!important}
#page-evenements .ev-discovery-visual>small{
  min-width:58px;justify-content:center;white-space:nowrap;word-break:normal;overflow-wrap:normal
}
#page-evenements .ev-discovery-visual>small i{
  white-space:nowrap;word-break:normal;overflow-wrap:normal;letter-spacing:.45px
}
#page-evenements .ev-discovery-title{
  display:-webkit-box;overflow:hidden;white-space:normal;word-break:normal;overflow-wrap:normal;
  text-overflow:ellipsis;-webkit-box-orient:vertical;-webkit-line-clamp:2
}
#page-evenements .ev-discovery-meta>span,
#page-evenements .ev-discovery-community,
#page-evenements .ev-discovery-card-top>b,
#page-evenements .ev-discovery-card-top>span{
  word-break:normal;overflow-wrap:normal
}
#page-evenements .ev-choice-details,#page-evenements .ev-choice-join{word-break:normal;overflow-wrap:normal}
#page-evenements .ev-filter-btn{white-space:nowrap}
.ev-practical-btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:.52rem .72rem;
  border:1px solid #dfe4ec;border-radius:12px;background:#f7f9fc;color:#3c465b;
  font:850 .75rem/1.25 inherit;cursor:pointer
}
.ev-practical-btn.is-route{border-color:#fed1b5;background:#fff4e9;color:#a64a18}
.ev-practical-btn.is-calendar{border-color:#cbdcfb;background:#eef5ff;color:#285fa9}
.ev-practical-btn.is-whatsapp{border-color:#bfe8cf;background:#ecfaf2;color:#187649}
.calendar-modal{padding:1.35rem!important;text-align:center}
.calendar-modal-icon{display:grid;place-items:center;width:52px;height:52px;margin:0 auto .65rem;border-radius:16px;background:#fff1e8;font-size:1.45rem}
.calendar-modal h3{margin:0;color:#252a3b;font-size:1.08rem}
.calendar-modal>p{margin:.45rem 0 1rem;color:#697184;font-size:.78rem;line-height:1.55}
.calendar-destinations{display:grid;gap:.5rem}
.calendar-choice{display:grid;grid-template-columns:36px minmax(0,1fr) 24px;align-items:center;gap:.55rem;width:100%;min-height:52px;padding:.48rem .58rem;border:1px solid #e1e5ec;border-radius:14px;background:#fff;color:#2c3243;font:850 .78rem/1.25 inherit;text-align:left;text-decoration:none;cursor:pointer}
.calendar-choice>span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#f1f4f8;font-size:.9rem}.calendar-choice>i{color:#8b93a3;font-style:normal;text-align:center}
.calendar-choice.is-google>span{background:#edf5ff;color:#3174d8}.calendar-choice.is-apple>span{background:#f1f2f5;color:#20242f}.calendar-choice.is-outlook>span{background:#eaf5ff;color:#176eb5}
.calendar-close{min-height:42px;border:0;background:transparent;color:#687083;font:800 .75rem/1 inherit;cursor:pointer}
.ev-empty,.ev-empty-state-sub{min-height:120px;display:grid;place-content:center;text-align:center;padding:1rem}

/* Administration : gestes rapides, cartes moins hautes et tableaux mobiles sûrs. */
#page-admin .wrap{padding-top:.85rem!important}
#page-admin .adm-card{padding:clamp(.8rem,2.5vw,1.15rem)!important;margin-bottom:.8rem!important;border-radius:18px!important}
#page-admin .adm-card-header{margin-bottom:.72rem!important;gap:.55rem!important}
#page-admin .adm-tabs{scrollbar-width:none;overscroll-behavior-inline:contain}
#page-admin .adm-tabs::-webkit-scrollbar{display:none}
#page-admin .adm-tab{flex:0 0 auto;padding:.58rem .78rem!important;font-size:.78rem!important}
#page-admin .f-g{margin-bottom:.72rem!important}
#page-admin .f-i{min-height:46px;padding:.68rem .75rem!important}
#page-admin textarea.f-i{min-height:94px}
.admin-members-list,.admin-feedback-events,#dash-chart{min-width:0}
.admin-inline-state{margin:.35rem 0;padding:.75rem;border-radius:13px;background:#fff7ed;color:#8a451f;font-size:.82rem}
.admin-inline-state button{margin-left:.35rem;border:0;background:transparent;color:#a5401c;font-weight:850;text-decoration:underline;cursor:pointer}
.admin-build-line{display:flex;align-items:center;justify-content:center;gap:.45rem;flex-wrap:wrap;margin-top:.48rem}
.admin-build-line span,.admin-build-line button{font-size:.72rem;font-weight:750}
.admin-build-line span{color:rgba(255,255,255,.72)}
.admin-build-line button{min-height:34px;padding:.3rem .65rem;border:1px solid rgba(255,255,255,.25);border-radius:999px;background:rgba(255,255,255,.1);color:#fff;cursor:pointer}
.admin-diagnostic{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem;margin:.55rem auto 0;max-width:620px}
.admin-diagnostic[hidden]{display:none}
.admin-diagnostic span{padding:.32rem .52rem;border-radius:10px;background:rgba(255,255,255,.1);color:rgba(255,255,255,.84);font-size:.7rem}
.admin-diagnostic b{color:#fff}

/* Parcours membre : prochaines sorties, attente et souvenirs sans requête supplémentaire. */
.member-history-group{margin-top:.8rem}.member-history-group h4{margin:0 0 .42rem;color:#303449;font-size:.74rem}.member-history-group+.member-history-group{padding-top:.72rem;border-top:1px solid #e8eaf0}.member-history-status{align-self:center;padding:.28rem .48rem;border-radius:999px;font-size:.56rem;font-weight:900;white-space:nowrap}.member-history-status.is-upcoming{background:#e8f8ef;color:#16764a}.member-history-status.is-waitlist{background:#fff4df;color:#9a5a08}

/* Preuve rassurante issue uniquement des inscriptions individuelles réelles. */
.ev-solo-proof{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:.55rem;padding:.6rem .68rem;border:1px solid rgba(244,128,58,.2);border-radius:14px;background:rgba(244,128,58,.07)}.ev-solo-proof>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:rgba(244,128,58,.13)}.ev-solo-proof p{margin:0!important;color:#6d6570;font-size:.67rem!important;line-height:1.45}.event-detail-card .ev-solo-proof p{color:#b9b5bd}.ev-solo-proof strong{display:block;color:#292638}

/* Résumé administrateur calculé à l'ouverture, sans polling. */
.admin-attention{margin-top:.85rem;padding:.75rem;border:1px solid rgba(255,255,255,.09);border-radius:17px;background:rgba(255,255,255,.035)}.admin-attention-head{display:flex;align-items:end;justify-content:space-between;gap:.6rem;margin-bottom:.55rem}.admin-attention-head span{display:block;color:#ff9b63;font-size:.48rem;font-weight:950;letter-spacing:1.2px}.admin-attention-head strong{display:block;margin-top:.15rem;color:#fff;font-size:.78rem}.admin-attention-head small{color:rgba(255,255,255,.45);font-size:.52rem}.admin-attention-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem}.admin-attention-grid article{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:.2rem .4rem;min-height:64px;padding:.52rem;border:1px solid rgba(255,255,255,.07);border-radius:13px;background:rgba(255,255,255,.035)}.admin-attention-grid article>span{grid-row:1/3;font-size:1rem}.admin-attention-grid article>strong{color:#fff;font-size:.95rem}.admin-attention-grid article>small{color:rgba(255,255,255,.55);font-size:.5rem;line-height:1.25}.admin-attention-grid article.is-hot{border-color:rgba(249,115,22,.3);background:rgba(249,115,22,.09)}

@media(max-width:620px){
  .page{padding-bottom:calc(5rem + env(safe-area-inset-bottom))}
  .wrap{padding-inline:.72rem}
  .modal-ov,.overlay,.event-detail-overlay,.member-public-overlay{
    padding:max(.35rem,env(safe-area-inset-top)) .35rem max(.35rem,env(safe-area-inset-bottom))!important
  }
  .modal,.event-detail-panel,.member-public-modal{
    width:100%!important;max-width:none!important;
    max-height:calc(100dvh - max(.7rem,env(safe-area-inset-top)) - env(safe-area-inset-bottom))!important
  }
  #page-evenements .ev-discovery-card{
    grid-template-columns:82px minmax(0,1fr) 48px!important;min-height:124px!important
  }
  #page-evenements .ev-discovery-main{padding:.62rem!important}
  #page-evenements .ev-discovery-meta,#page-evenements .ev-discovery-capacity,
  #page-evenements .ev-discovery-community{font-size:.76rem!important}
  .event-detail-card .ev-practical-btn{font-size:.78rem!important}
  .event-detail-card .ev-card-body{padding:.7rem!important}
  .event-detail-card .ev-card-actions{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding:.62rem!important}
  #page-admin .adm-hero-content{padding-inline:.75rem}
  #page-admin .adm-kpis-bar{gap:.35rem;padding-inline:.55rem}
  #page-admin .adm-kpi{min-width:0;padding:.55rem .35rem}
  #page-admin .adm-kpi-n{font-size:1.1rem}
  #page-admin .adm-kpi-l{font-size:.68rem}
  #page-admin .f-g2{grid-template-columns:1fr!important;gap:0!important}
  #page-admin .admin-members-toolbar{display:grid!important;grid-template-columns:1fr 1fr!important}
  #page-admin .admin-member-list-search{grid-column:1/-1}
  .admin-attention-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-attention-head{align-items:flex-start;flex-direction:column}.member-history-item{grid-template-columns:42px minmax(0,1fr) auto}.member-history-status{grid-column:2;justify-self:start}.member-history-emoji{grid-column:3;grid-row:1/3}
}

@media(max-width:380px){
  #page-evenements .ev-discovery-card{grid-template-columns:76px minmax(0,1fr) 44px!important}
  .event-detail-card .ev-card-actions{grid-template-columns:1fr!important}
  .event-detail-card .ev-card-actions>*{grid-column:1!important}
  #page-admin .adm-kpis-bar{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
}

/* Carte adhérent digitale — légère, sans image générée ni dépendance externe. */
.club-card-priority{margin-bottom:.9rem!important}
.club-content.is-verifying>.club-hero,.club-content.is-verifying .club-premium-wrap>:not(.club-card-priority){display:none!important}
.club-content.is-verifying .club-premium-wrap{padding-top:.8rem}
.club-expired-card-host{margin-bottom:.8rem;text-align:left}.club-expired-card-host[hidden]{display:none!important}
.vsc-membership-compact{display:grid;grid-template-columns:minmax(150px,.82fr) minmax(170px,1fr);align-items:center;gap:1rem}
.vsc-membership-summary{display:flex;min-width:0;flex-direction:column;align-items:flex-start;gap:.3rem}
.vsc-membership-summary>strong{display:inline-flex;align-items:center;padding:.3rem .55rem;border-radius:999px;background:#e5f8ed;color:#137544;font-size:.66rem;font-weight:950;letter-spacing:.035em}
.vsc-membership-summary>b{color:var(--tx);font-size:clamp(.94rem,.88rem + .3vw,1.08rem);font-weight:950}
.vsc-membership-summary>span{color:var(--mu);font-size:.74rem;line-height:1.4}
.vsc-membership-summary .vsc-member-card-open{width:100%;margin-top:.35rem}
.vsc-member-card-preview{cursor:pointer;border-radius:22px;transition:transform .18s ease,box-shadow .18s ease}
.vsc-member-card-preview:focus-within,.vsc-member-card-preview:hover{transform:translateY(-2px)}
.vsc-member-card{position:relative;isolation:isolate;overflow:hidden;box-sizing:border-box;width:100%;aspect-ratio:1.58/1;min-height:220px;padding:1rem;border-radius:22px;color:#fff;background:linear-gradient(145deg,#111827 0%,#1b2635 55%,#0f172a 100%);box-shadow:0 16px 38px rgba(15,23,42,.25);display:flex;flex-direction:column;justify-content:space-between}
.vsc-member-card::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at 86% 12%,rgba(255,112,67,.42),transparent 33%),linear-gradient(120deg,transparent 48%,rgba(255,255,255,.04) 49%,transparent 51%)}
.vsc-member-card-glow{position:absolute;right:-18%;bottom:-45%;width:66%;aspect-ratio:1;border-radius:50%;background:rgba(244,128,58,.17);filter:blur(12px);z-index:-1}
.vsc-member-card header{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:.7rem;align-items:center}
.vsc-member-card header img{width:42px;height:42px;border-radius:11px;object-fit:cover;border:1px solid rgba(255,255,255,.24)}
.vsc-member-card header div{min-width:0;display:flex;flex-direction:column;line-height:1.2}
.vsc-member-card header span{font-size:.59rem;font-weight:800;letter-spacing:.14em;color:#ffb78c}
.vsc-member-card header strong{font-size:.9rem;letter-spacing:.04em;overflow-wrap:anywhere}
.vsc-member-card header em{font-style:normal;font-weight:900;font-size:1rem;color:#ffd1b5}
.vsc-member-card-body>span{display:block;font-size:.58rem;font-weight:900;letter-spacing:.14em;color:rgba(255,255,255,.58);margin-bottom:.22rem}
.vsc-member-card-body h3{font-size:clamp(1.08rem,4.8vw,1.5rem);line-height:1.14;margin:0 0 .42rem;overflow-wrap:anywhere}
.vsc-member-active{display:inline-flex;align-items:center;gap:.38rem;padding:.32rem .58rem;border:1px solid rgba(83,225,157,.38);border-radius:999px;background:rgba(13,148,91,.19);color:#a8f6ce;font-size:.64rem;font-weight:900;letter-spacing:.05em}
.vsc-member-active i{width:7px;height:7px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 3px rgba(74,222,128,.12)}
.vsc-member-card footer{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;border-top:1px solid rgba(255,255,255,.13);padding-top:.62rem}
.vsc-member-card footer div{min-width:0;display:flex;flex-direction:column;gap:.08rem}
.vsc-member-card footer small{font-size:.55rem;color:rgba(255,255,255,.56)}
.vsc-member-card footer strong{font-size:.68rem;line-height:1.3;overflow-wrap:anywhere}
.vsc-member-card>p{margin:.42rem 0 0;font-size:.52rem;color:rgba(255,255,255,.48);text-align:right}
.vsc-member-card.is-thumbnail{min-height:0;padding:.7rem;border-radius:17px}
.vsc-member-card.is-thumbnail header{grid-template-columns:32px minmax(0,1fr) auto;gap:.42rem}.vsc-member-card.is-thumbnail header img{width:32px;height:32px;border-radius:8px}.vsc-member-card.is-thumbnail header span{font-size:.43rem}.vsc-member-card.is-thumbnail header strong{font-size:.66rem}.vsc-member-card.is-thumbnail header em{font-size:.72rem}
.vsc-member-card.is-thumbnail .vsc-member-card-body>span{font-size:.45rem}.vsc-member-card.is-thumbnail .vsc-member-card-body h3{margin-bottom:.24rem;font-size:clamp(.8rem,2.6vw,1rem)}.vsc-member-card.is-thumbnail .vsc-member-active{padding:.2rem .36rem;font-size:.46rem}.vsc-member-card.is-thumbnail footer{gap:.3rem;padding-top:.38rem}.vsc-member-card.is-thumbnail footer small{font-size:.4rem}.vsc-member-card.is-thumbnail footer strong{font-size:.48rem}.vsc-member-card.is-thumbnail>p{display:none}
.vsc-member-card.is-expired{filter:saturate(.08);background:linear-gradient(145deg,#333842,#555b65);box-shadow:none}.vsc-member-card.is-expired::after{content:"EXPIRÉE";position:absolute;right:-1.1rem;top:2.55rem;padding:.22rem 1.35rem;transform:rotate(35deg);background:#f4f4f5;color:#3f3f46;font-size:.46rem;font-weight:950;letter-spacing:.1em}
.vsc-member-expired{display:inline-flex;padding:.25rem .42rem;border:1px solid rgba(255,255,255,.28);border-radius:999px;background:rgba(0,0,0,.2);color:#fff;font-size:.49rem;font-weight:950;letter-spacing:.035em}
.vsc-membership-expired-wrap{display:grid;grid-template-columns:minmax(145px,.8fr) minmax(170px,1fr);align-items:center;gap:.9rem;padding:.75rem;border:1px solid #d9d6d3;border-radius:19px;background:#f3f1ef}.vsc-membership-expired-copy{min-width:0}.vsc-membership-expired-copy>strong{display:block;color:#792c28;font-size:.78rem;font-weight:950}.vsc-membership-expired-copy>p{margin:.35rem 0 .7rem;color:#655f5b;font-size:.72rem;line-height:1.45}
.vsc-membership-loading{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:.75rem;min-height:108px;padding:1rem;border:1px solid #e6e8ec;border-radius:18px;background:#f8f9fb}.vsc-membership-loading>span{width:42px;height:42px;border-radius:13px;background:linear-gradient(100deg,#e6e8ec 25%,#f5f6f8 45%,#e6e8ec 65%);background-size:220% 100%;animation:vsc-card-skeleton 1.3s linear infinite}.vsc-membership-loading strong{display:block;color:#363b4b;font-size:.82rem}.vsc-membership-loading p{margin:.22rem 0 0;color:#747b89;font-size:.71rem;line-height:1.45}.vsc-membership-loading.is-unavailable>span{display:grid;place-items:center;background:#fff0e8;color:#a4431d;font-size:1.2rem;animation:none}
@keyframes vsc-card-skeleton{to{background-position:-220% 0}}
.vsc-member-card-open{margin-top:.88rem;min-height:48px;letter-spacing:.025em}
.vsc-member-card-help{text-align:center;margin:.48rem 0 0;color:var(--mu);font-size:.75rem;line-height:1.45}
.vsc-membership-inactive{display:flex;align-items:flex-start;gap:.75rem;padding:1rem;margin-bottom:.8rem;border:1px solid #eadfd8;border-radius:16px;background:#fffaf7;color:var(--tx)}
.vsc-membership-inactive>span{font-size:1.55rem}.vsc-membership-inactive div{min-width:0}.vsc-membership-inactive strong{display:block;font-size:.9rem;margin-bottom:.2rem}.vsc-membership-inactive p{margin:0;color:var(--mu);font-size:.77rem;line-height:1.5}
.vsc-card-open,.vsc-card-open body{overflow:hidden!important;overscroll-behavior:none}
.vsc-member-card-overlay{position:fixed;inset:0;z-index:12000;box-sizing:border-box;display:grid;place-items:center;padding:max(1rem,env(safe-area-inset-top)) 1rem max(1rem,env(safe-area-inset-bottom));background:rgba(5,9,17,.82);backdrop-filter:blur(8px);overscroll-behavior:contain}
.vsc-member-card-overlay[hidden]{display:none!important}
.vsc-member-card-sheet{box-sizing:border-box;width:min(100%,560px);max-height:calc(100dvh - 2rem - env(safe-area-inset-top) - env(safe-area-inset-bottom));overflow:auto;overscroll-behavior:contain;border-radius:24px;padding:1rem;background:#fff;color:var(--tx);box-shadow:0 28px 70px rgba(0,0,0,.42)}
.vsc-member-card-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:.9rem}.vsc-member-card-sheet-head div{min-width:0}.vsc-member-card-sheet-head span{font-size:.65rem;font-weight:900;letter-spacing:.1em;color:var(--or)}.vsc-member-card-sheet-head h2{margin:.12rem 0 0;font-size:clamp(1rem,4vw,1.25rem);line-height:1.2}.vsc-member-card-sheet-head button{flex:0 0 44px;width:44px;height:44px;border:0;border-radius:50%;background:#f3f4f6;color:#111827;font-size:1.45rem;cursor:pointer}
.vsc-member-card-sheet .vsc-member-card{min-height:0}.vsc-member-card-proof{margin:.75rem .1rem .1rem;text-align:center;color:var(--mu);font-size:.72rem;line-height:1.45}

@media(max-width:430px){
  .club-card-priority{margin-inline:0!important}.vsc-membership-compact,.vsc-membership-expired-wrap{grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:.65rem}.vsc-membership-summary>span{font-size:.67rem}.vsc-membership-summary .vsc-member-card-open{min-height:46px;padding:.55rem .4rem;font-size:.72rem}.vsc-membership-expired-wrap{padding:.58rem}.vsc-membership-expired-copy .btn{font-size:.68rem;padding:.5rem}.vsc-member-card.is-thumbnail footer{display:none}.vsc-member-card.is-thumbnail{aspect-ratio:1.42/1}.vsc-member-card.is-thumbnail .vsc-member-card-body h3{font-size:.78rem}.vsc-member-card.is-thumbnail .vsc-member-active,.vsc-member-card.is-thumbnail .vsc-member-expired{font-size:.43rem}
  .vsc-member-card-overlay{align-items:end;padding:max(.5rem,env(safe-area-inset-top)) .5rem max(.5rem,env(safe-area-inset-bottom))}
  .vsc-member-card-sheet{width:100%;max-height:calc(100dvh - max(1rem,env(safe-area-inset-top)) - env(safe-area-inset-bottom));border-radius:24px 24px 18px 18px;padding:.85rem}
  .vsc-member-card{padding:.8rem;border-radius:18px;min-height:0}
  .vsc-member-card header{grid-template-columns:36px minmax(0,1fr) auto;gap:.5rem}.vsc-member-card header img{width:36px;height:36px;border-radius:9px}.vsc-member-card header strong{font-size:.76rem}.vsc-member-card header span{font-size:.5rem}.vsc-member-card header em{font-size:.82rem}
  .vsc-member-card-body h3{font-size:clamp(.98rem,5vw,1.28rem)}.vsc-member-active{font-size:.55rem;padding:.26rem .46rem}.vsc-member-card footer{gap:.35rem;padding-top:.48rem}.vsc-member-card footer strong{font-size:.58rem}.vsc-member-card footer small{font-size:.49rem}.vsc-member-card>p{font-size:.46rem;margin-top:.28rem}
}
@media(max-width:370px){.vsc-membership-compact,.vsc-membership-expired-wrap{grid-template-columns:1fr}.vsc-member-card.is-thumbnail{max-width:240px;margin-inline:auto;aspect-ratio:1.58/1}.vsc-membership-summary{align-items:stretch;text-align:center}.vsc-membership-summary>strong{align-self:center}}

/* Carte adhérent 2026 — lecture premium et réellement confortable sur mobile. */
.vsc-membership-compact{grid-template-columns:minmax(0,1.35fr) minmax(190px,.65fr);gap:1rem;padding:clamp(.75rem,2vw,1rem);background:linear-gradient(145deg,#fff 0%,#fff8f3 100%);border:1px solid rgba(244,128,58,.2);box-shadow:0 16px 42px rgba(38,31,27,.09)}
.vsc-member-card-preview{position:relative;padding:0;border:0;outline:none}.vsc-member-card-preview:focus-visible{box-shadow:0 0 0 4px rgba(244,128,58,.22)}
.vsc-member-card{background:linear-gradient(140deg,#101827 0%,#18263a 49%,#0b1524 100%);box-shadow:0 20px 48px rgba(10,19,33,.3);border:1px solid rgba(255,255,255,.1)}
.vsc-member-card::before{background:radial-gradient(circle at 92% 8%,rgba(255,107,61,.55),transparent 30%),radial-gradient(circle at 4% 96%,rgba(58,191,184,.24),transparent 34%),linear-gradient(118deg,transparent 46%,rgba(255,255,255,.055) 47%,transparent 49%)}
.vsc-member-card::after{content:"";position:absolute;inset:0;z-index:-1;opacity:.18;background-image:linear-gradient(rgba(255,255,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.12) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to left,#000,transparent 72%)}
.vsc-member-card-orbit{position:absolute;right:-2.1rem;bottom:-2.2rem;width:9rem;height:9rem;border:1px solid rgba(255,255,255,.12);border-radius:50%;display:grid;place-items:center;transform:rotate(-12deg)}.vsc-member-card-orbit::before,.vsc-member-card-orbit::after{content:"";position:absolute;border:1px solid rgba(255,255,255,.1);border-radius:50%;inset:1rem}.vsc-member-card-orbit::after{inset:2rem}.vsc-member-card-orbit span{font-size:.68rem;font-weight:950;letter-spacing:.18em;color:rgba(255,255,255,.2)}
.vsc-member-card header strong{letter-spacing:.075em}.vsc-member-card header em{padding:.28rem .5rem;border:1px solid rgba(255,183,140,.28);border-radius:999px;background:rgba(255,112,67,.13);line-height:1}
.vsc-member-card-body h3{max-width:82%;overflow-wrap:break-word;word-break:normal;hyphens:none;text-shadow:0 2px 16px rgba(0,0,0,.22)}
.vsc-member-active{background:rgba(13,148,91,.24);backdrop-filter:blur(5px)}
.vsc-member-card footer{position:relative;z-index:1}.vsc-member-card footer strong{overflow-wrap:normal;word-break:normal}.vsc-member-card>p{position:relative;z-index:1;font-weight:750;letter-spacing:.06em}
.vsc-member-card.is-thumbnail{padding:.9rem;border-radius:20px}.vsc-member-card.is-thumbnail header{grid-template-columns:36px minmax(0,1fr) auto}.vsc-member-card.is-thumbnail header img{width:36px;height:36px}.vsc-member-card.is-thumbnail header strong{font-size:.7rem}.vsc-member-card.is-thumbnail .vsc-member-card-body h3{font-size:clamp(.95rem,3.5vw,1.15rem);max-width:80%}.vsc-member-card.is-thumbnail footer{display:grid}.vsc-member-card.is-thumbnail footer small{font-size:.46rem}.vsc-member-card.is-thumbnail footer strong{font-size:.56rem}
.vsc-member-card-tap{position:absolute;right:.65rem;bottom:.6rem;z-index:2;display:inline-flex;align-items:center;gap:.3rem;padding:.3rem .48rem;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(6,11,20,.54);backdrop-filter:blur(6px);color:rgba(255,255,255,.84);font-size:.56rem;font-weight:800;pointer-events:none}.vsc-member-card-tap i{font-style:normal;color:#ffb78c}
.vsc-membership-summary{align-items:flex-start;justify-content:center;padding:.2rem}.vsc-membership-summary>b{font-size:clamp(1.05rem,2vw,1.22rem)}.vsc-membership-summary>span{font-size:.76rem;line-height:1.55}.vsc-membership-perks{display:flex;flex-direction:column;gap:.35rem;margin:.2rem 0}.vsc-membership-perks small{color:#525866;font-size:.68rem;font-weight:700}.vsc-membership-summary .vsc-member-card-open{text-transform:none;letter-spacing:0;font-size:.78rem}
@media(max-width:640px){.vsc-membership-compact,.vsc-membership-expired-wrap{grid-template-columns:minmax(0,1fr)}.vsc-membership-summary{align-items:stretch;padding:.15rem .15rem 0}.vsc-membership-summary>strong{align-self:flex-start}.vsc-membership-perks{display:grid;grid-template-columns:1fr 1fr}.vsc-member-card.is-thumbnail{aspect-ratio:1.58/1}.vsc-member-card-tap{display:inline-flex}}
@media(max-width:370px){.vsc-member-card.is-thumbnail{max-width:none}.vsc-member-card.is-thumbnail header{grid-template-columns:32px minmax(0,1fr) auto}.vsc-member-card.is-thumbnail header img{width:32px;height:32px}.vsc-member-card.is-thumbnail footer{display:grid}.vsc-membership-perks{grid-template-columns:1fr}.vsc-member-card-tap{font-size:.52rem}}
