/* Masquer header/footer/menu pour Hello/Elementor/Theme Builder quand body a la classe dédiée */
.lp-no-header-footer header,
.lp-no-header-footer .site-header,
.lp-no-header-footer #site-header,
.lp-no-header-footer .elementor-location-header,
.lp-no-header-footer .elementor-location-footer,
.lp-no-header-footer footer,
.lp-no-header-footer .site-footer {
  display: none !important;
}

/* ===== Mise en page ===== */
.lp.lp-cls, .lp.lp-cls * { box-sizing: border-box; }
.lp.lp-cls{
  display:grid; grid-template-columns:32% 68%;
  min-height:min(100vh,100dvh); background:#f3f3f3;
  font-family:inherit;
}
.lp-cls-left{
  position:relative; padding:32px 28px; color:#fff;
  background:linear-gradient(180deg,#f39a3b 0%,#e86c3a 100%);
  display:flex; flex-direction:column; justify-content:space-between;
}
.lp-cls-left-top{ display:flex; gap:8px; }
.lp-pill{
  border:1px solid rgba(255,255,255,.45); background:rgba(255,255,255,.12);
  color:#fff; width:40px; height:40px; border-radius:999px;
  display:grid; place-items:center; cursor:pointer;
}
.pill-ghost{ background:transparent; }
.lp-eyebrow{ margin:0 0 8px; opacity:.9; letter-spacing:.02em; }
.lp-title{ margin:0 0 8px; font-size:clamp(28px,3.6vw,44px); line-height:1.05; }
.lp-sub{ margin:0; opacity:.9; max-width:26ch; }
.lp-gear{ position:absolute; left:16px; bottom:16px; opacity:.75; }

.lp-cls-right{ padding:28px clamp(16px,2.8vw,36px); background:#eef1ee; }
.lp-head{ display:flex; align-items:center; justify-content:space-between; margin-bottom:16px; }
.lp-head h2{ margin:0; font-size:clamp(20px,2.2vw,28px); }

/* Select */
.lp-select{ position:relative; display:inline-flex; align-items:center;
  background:#fff; border:1px solid #d7d7d7; border-radius:8px; padding:8px 36px 8px 12px; }
.lp-select select{ appearance:none; border:0; outline:none; background:transparent; min-width:240px; font-size:14px; }
.lp-select .car{ position:absolute; right:10px; pointer-events:none; }

/* Tableau */
.lp-table{ background:rgba(255,255,255,.8); border:1px solid #e2e2e2; border-radius:16px; overflow:hidden; backdrop-filter:blur(4px); }
.lp-thead, .lp-row{
  display:grid; align-items:center;
  grid-template-columns:1.6fr .6fr .6fr .8fr .8fr 56px;
}
.lp-thead{
  background:rgba(250,250,250,.7); color:#666; font-weight:600;
  padding:14px 18px; border-bottom:1px solid #e9e9e9;
}
.lp-tbody .lp-row{
  padding:14px 18px; color:#2b2b2b; text-decoration:none;
  border-bottom:1px solid #eaeaea; transition:background .15s ease;
}
.lp-tbody .lp-row:hover{ background:rgba(0,0,0,.035); }
.c-name{ display:flex; align-items:center; gap:10px; min-width:0; }
.nm{ white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.c-points strong{ font-weight:700; }
.ob{
  width:36px; height:36px; display:inline-grid; place-items:center;
  border-radius:999px; background:#e8c53a; border:1px solid rgba(0,0,0,.08);
}

/* Podium pastilles */
.dot{ width:14px; height:14px; border-radius:50%; display:inline-block; border:1px solid rgba(0,0,0,.12); }
.podium-1 .dot{ background:#d4af37; } /* or - gold */
.podium-2 .dot{ background:#bfc0c0; } /* silver */
.podium-3 .dot{ background:#b87333; } /* bronze */
.r{ opacity:.7; min-width:22px; }

.lp-empty{ padding:24px; text-align:center; color:#7b7b7b; }

/* Responsive */
@media (max-width:1024px){
  .lp.lp-cls{ grid-template-columns:100%; }
  .lp-cls-left{ display:none; }
  .lp-cls-right{ padding:18px 14px; }
  .lp-thead, .lp-row{ grid-template-columns:1.4fr .6fr .6fr .6fr .7fr 44px; }
  .ob{ width:32px; height:32px; }
}
@media (max-width:640px){
  .lp-thead, .lp-row{ grid-template-columns:1.6fr .6fr .6fr .7fr 44px; }
  .c-presences{ display:none; }
  .lp-select select{ min-width:160px; }
}
