/* Couleurs · podium.css : classements des mini-jeux (24 oct. 2026). Chargé par les pages /jeux/ et par l'app.
   Dépend de cg.css (jetons --cg-*, .cg-seg, .cg-sheet, .cg-avatar). --acc = couleur du jeu. */
.pd-list{ list-style:none; margin:12px 0 0; padding:0; display:grid; gap:2px; counter-reset:none; }
.pd-row{ display:grid; grid-template-columns:24px 28px minmax(0, 1fr) auto; align-items:center; gap:10px; min-height:44px;
  padding:6px 12px 6px 8px; border-radius:var(--cg-r-md); }
.pd-row:nth-child(odd){ background:rgba(255,255,255,.025); }
.pd-r{ font-size:13px; font-weight:600; color:var(--cg-fg-3); text-align:center; font-variant-numeric:tabular-nums; }
.pd-row.is-p1 .pd-r{ color:var(--cg-gold); }
.pd-n{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:15px; font-weight:500; }
.pd-s{ font-size:15px; font-weight:600; font-variant-numeric:tabular-nums; letter-spacing:-.01em; }
.pd-row.is-me{ background:color-mix(in oklab, var(--acc, #fff) 16%, transparent); box-shadow:inset 3px 0 0 var(--acc, #fff); }
.pd-av{ flex:none; }
.pd-av--free{ display:block; width:var(--as); height:var(--as); border-radius:50%; box-shadow:inset 0 0 0 1.5px var(--cg-line-2); }
.pd-list.is-mini .pd-row{ min-height:40px; }
.pd-you{ display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; margin:12px 0 0; padding:12px 14px; border-radius:var(--cg-r-md);
  background:var(--cg-raised-2); box-shadow:var(--cg-e1); font-size:15px; }
.pd-you__l{ color:var(--cg-fg-2); }
.pd-you b{ font-weight:600; font-variant-numeric:tabular-nums; }
.pd-you__s{ margin-left:auto; font-weight:600; font-variant-numeric:tabular-nums; color:var(--acc, var(--cg-fg)); }
.pd-you.is-none{ color:var(--cg-fg-2); }
.pd-you.is-big b{ font-size:22px; letter-spacing:-.03em; }
.pd-empty{ margin:14px 0 0; color:var(--cg-fg-2); font-size:15px; }
.pd-rule{ margin:0 0 14px; color:var(--cg-fg-2); font-size:14px; }
.pd-seg{ max-width:340px; }
.pd-body{ min-height:120px; }
.pd-body[aria-busy="true"]{ opacity:.55; transition:opacity .2s ease; }

/* fenêtre « top 10 » */
.pd-dlg__k{ margin:0; font-size:13px; font-weight:600; color:var(--acc, var(--cg-fg-2)); text-transform:lowercase; }
.pd-dlg .cg-sheet__title{ margin:2px 0 4px; }
.pd-dlg__acts{ display:flex; justify-content:flex-end; margin-top:18px; }
.pd-dlg__acts .cg-btn{ min-width:120px; }

/* bloc de la feuille de fin de partie */
.pd-slot{ margin:14px 0 4px; padding:14px; border-radius:var(--cg-r-lg); background:var(--cg-raised-2); box-shadow:var(--cg-e1); text-align:left; }
.pd-slot[hidden]{ display:none; }
.pd-slot .pd-you{ margin-top:8px; padding:0; background:none; box-shadow:none; }
.pd-slot .pd-list{ margin-top:8px; }
.pd-slot__h{ display:flex; align-items:center; justify-content:space-between; gap:8px; margin:0; font-size:13px; font-weight:600; color:var(--cg-fg-2); }
.pd-slot__st{ font-weight:500; color:var(--cg-fg-3); }
.pd-slot__f{ display:flex; align-items:center; justify-content:space-between; gap:10px; margin:10px 0 0; font-size:13px; color:var(--cg-fg-3); }
.pd-as{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pd-tag{ padding:3px 8px; border-radius:var(--cg-r-pill); background:var(--acc, var(--cg-gold)); color:#0A0A0A; font-size:12px; font-weight:600; }
.pd-link{ flex:none; min-height:44px; padding:0 4px; border:0; background:none; color:var(--cg-fg); font:600 14px/1 var(--cg-font);
  text-decoration:underline; text-underline-offset:3px; text-decoration-color:var(--cg-line-3); cursor:pointer; }
.pd-skel{ display:grid; gap:6px; margin-top:10px; }
.pd-skel i{ display:block; height:36px; border-radius:var(--cg-r-md); background:rgba(255,255,255,.04); }
@media (prefers-reduced-motion:no-preference){
  .pd-skel i{ animation:pd-pulse 1.2s ease-in-out infinite alternate; }
  .pd-skel i:nth-child(2){ animation-delay:.15s; } .pd-skel i:nth-child(3){ animation-delay:.3s; }
}
@keyframes pd-pulse{ from{ opacity:.45; } to{ opacity:1; } }

/* podium à trois marches (accueil des jeux, app) */
.pd-pod{ display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); align-items:end; gap:6px; }
.pd-step{ display:flex; flex-direction:column; align-items:center; gap:4px; min-width:0; text-align:center; }
.pd-step__n{ max-width:100%; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; font-weight:500; }
.pd-step__s{ font-size:12px; font-weight:600; color:var(--cg-fg-2); font-variant-numeric:tabular-nums; }
.pd-step__b{ display:grid; place-items:start center; width:100%; height:34px; margin-top:4px; padding-top:6px; border-radius:10px 10px 4px 4px;
  background:var(--cg-raised-3); transform-origin:50% 100%; }
.pd-step__b{ font-style:normal; }
.pd-step__b b{ font-size:13px; font-weight:600; color:var(--cg-fg-2); }
.pd-step.is-1 .pd-step__b{ height:58px; background:var(--acc, #fff); }
.pd-step.is-1 .pd-step__b b{ color:#0A0A0A; }
.pd-step.is-2 .pd-step__b{ height:44px; }
.pd-step.is-free .pd-step__n, .pd-step.is-free .pd-step__s{ visibility:hidden; }
.pd-step.is-free .pd-step__b{ background:rgba(255,255,255,.05); }
.pd-step.is-1.is-free .pd-step__b{ background:color-mix(in oklab, var(--acc, #fff) 22%, transparent); }
@media (prefers-reduced-motion:no-preference){
  .pd-pod:not(.is-up) .pd-step__b{ transform:scaleY(.4); }
  .pd-pod:not(.is-up) .pd-av, .pd-pod:not(.is-up) .pd-step__n, .pd-pod:not(.is-up) .pd-step__s{ opacity:0; transform:translateY(8px); }
  .pd-step__b{ transition:transform .52s var(--cg-ease-out, cubic-bezier(.22,1,.36,1)) calc((2 - var(--k)) * 70ms); }
  .pd-step .pd-av, .pd-step__n, .pd-step__s{ transition:opacity .3s ease calc(160ms + (2 - var(--k)) * 70ms),
    transform .42s var(--cg-ease-out, cubic-bezier(.22,1,.36,1)) calc(160ms + (2 - var(--k)) * 70ms); }
}

/* section « classements » (accueil des jeux) et cartes par jeu */
.pdh{ margin-top:40px; }
.pdh__head{ display:flex; flex-wrap:wrap; align-items:end; justify-content:space-between; gap:12px 20px; margin-bottom:16px; }
.pdh__title{ margin:0; font-size:var(--cg-fs-h2); font-weight:500; letter-spacing:var(--cg-track-tight); }
.pdh__lead{ margin:6px 0 0; color:var(--cg-fg-2); font-size:15px; max-width:44ch; }
.pdh .pd-seg{ width:100%; max-width:300px; }
/* téléphone : une rangée qui défile au doigt (une carte et le bord de la suivante), ordinateur : une grille */
.pd-grid{ list-style:none; margin:0; padding:0; display:grid; grid-auto-flow:column; grid-auto-columns:min(82%, 320px); gap:10px;
  overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; overscroll-behavior-x:contain;
  margin-inline:calc(var(--cg-gutter, 16px) * -1); padding-inline:var(--cg-gutter, 16px); scroll-padding-inline:var(--cg-gutter, 16px); }
.pd-grid::-webkit-scrollbar{ display:none; }
.pd-grid > li{ scroll-snap-align:start; }
@media (min-width:700px){ .pd-grid{ grid-auto-flow:row; grid-auto-columns:auto; grid-template-columns:repeat(2, minmax(0, 1fr)); overflow:visible;
  margin-inline:0; padding-inline:0; } }
@media (min-width:1100px){ .pd-grid{ grid-template-columns:repeat(3, minmax(0, 1fr)); } }
.pd-card{ display:flex; flex-direction:column; gap:12px; padding:16px; border-radius:var(--cg-r-lg); background:var(--cg-raised); box-shadow:var(--cg-e1); }
.pd-card__h{ display:flex; align-items:baseline; justify-content:space-between; gap:8px; }
.pd-card__name{ margin:0; font-size:17px; font-weight:600; letter-spacing:-.02em; }
.pd-card__name::before{ content:""; display:inline-block; width:8px; height:8px; margin-right:8px; border-radius:50%; background:var(--acc); vertical-align:2px; }
.pd-card__rule{ margin:0; font-size:12px; color:var(--cg-fg-3); }
.pd-card__f{ display:flex; align-items:center; justify-content:space-between; gap:10px; min-height:44px; }
.pd-card__you{ margin:0; min-width:0; font-size:13px; color:var(--cg-fg-2); }
.pd-card__more{ flex:none; }
.pd-card__pod{ min-height:128px; display:flex; align-items:flex-end; }
.pd-card__pod > .pd-pod{ width:100%; }

/* section « classement » d'une page de jeu (sous le jeu) */
.pd-page .pd-seg{ margin-top:4px; }
