/* Mille Bornes : cartes, piste de 1 000 km et voitures. Le reste du style vient de shared.css */
.mbc{--w:var(--uw,80px);width:var(--w);height:calc(var(--w) * 1.42);flex:none;position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border-radius:10px;border:3px solid #F4E7CF;box-shadow:0 3px 0 #1A100A;font-family:'Source Sans 3',sans-serif;font-weight:800;text-align:center;padding:4px;overflow:hidden;user-select:none;background:#F4E7CF;color:#2B1B12}
.mbc.km{background:#FBF6EA}
.mbc.km .mbk{font-family:'Bitter',serif;font-size:calc(var(--w) * .42);line-height:1;color:#2B1B12}
.mbc.km small{font-size:calc(var(--w) * .16);letter-spacing:.06em;text-transform:uppercase;color:#7A5A3C}
.mbc.atk{background:#D8452F;color:#FBF6EA}
.mbc.rem{background:#3FA34D;color:#FBF6EA}
.mbc.saf{background:#2F6FD8;color:#FBF6EA}
.mbc .mbw{font-size:calc(var(--w) * .15);line-height:1.1;text-transform:uppercase;letter-spacing:.02em}
.mbc.back{background:repeating-linear-gradient(45deg,#2B1B12 0 8px,#5B3A29 8px 16px);color:#F2C525;font-family:'Bitter',serif;font-size:calc(var(--w) * .3)}
.mbc.empty{background:transparent;border-style:dashed;border-color:#5B3A29;box-shadow:none}
button.mbc{cursor:pointer;-webkit-tap-highlight-color:transparent}
button.mbc:disabled{cursor:default}
button.mbc.off{filter:grayscale(.7) brightness(.7);opacity:.6}
button.mbc.ok{box-shadow:0 3px 0 #1A100A,0 0 0 3px #F2C525}
button.mbc.ok:active{transform:translateY(2px)}
.uhand .mbc{--w:70px}
@media(min-width:900px){.gm.mb .uhand .mbc{--w:92px}}
.mbmid{display:flex;align-items:center;gap:18px;width:100%;min-height:0}
.mbpile{display:flex;gap:10px;align-items:center;flex:none}
.mbpile .mbc{--w:64px}
.mbtrack{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:6px;padding:8px 10px;border-radius:14px;background:rgba(43,27,18,.6);box-shadow:0 4px 0 #1A100A}
.mbscale{position:relative;height:16px;margin:0 6px 0 132px;font-family:'Bitter',serif;font-size:12px;color:#C9B393}
.mbscale span{position:absolute;top:0;white-space:nowrap;transform:translateX(-50%)}
.mbscale span:nth-child(1){left:0;transform:none}
.mbscale span:nth-child(2){left:50%}
.mbscale span:nth-child(3){left:100%;transform:translateX(-100%)}
.mblane{display:grid;grid-template-columns:118px 1fr;grid-template-rows:auto auto;column-gap:8px;align-items:center;padding:3px 6px;border-radius:10px;border:2px solid transparent;transition:border-color .2s,opacity .2s}
.mblane.on{border-color:#F2C525;background:rgba(242,197,37,.10)}
.mblane.gone{opacity:.4}
.mbn{grid-column:1;grid-row:1;display:flex;flex-direction:column;overflow:hidden}
.mbn span:first-child{font-family:'Source Sans 3',sans-serif;font-weight:800;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mbkm{font-family:'Bitter',serif;font-size:12px;color:#C9B393}
.mbbar{grid-column:2;grid-row:1;position:relative;height:22px;border-radius:11px;background:#140C08;box-shadow:inset 0 2px 0 rgba(0,0,0,.4);background-image:repeating-linear-gradient(90deg,transparent 0 calc(10% - 1px),rgba(201,179,147,.25) calc(10% - 1px) 10%)}
.mbfill{position:absolute;left:0;top:0;bottom:0;border-radius:11px;opacity:.55}
.mbcar{position:absolute;top:-10px;transform:translateX(-50%);transition:left .6s ease-in-out;filter:drop-shadow(0 2px 0 #1A100A)}
.mbcar svg{display:block}
.mbst{grid-column:2;grid-row:2;display:flex;gap:4px;flex-wrap:wrap;min-height:18px;margin-top:2px}
.mbbad{font-family:'Source Sans 3',sans-serif;font-weight:800;font-size:11px;padding:1px 7px;border-radius:9px;background:#5B3A29;color:#F4E7CF;white-space:nowrap}
.mbbad.red{background:#D8452F}
.mbbad.amber{background:#F08A1C;color:#2B1B12}
.mbbad.blue{background:#2F6FD8}
.mbbad.gold{background:#F2C525;color:#2B1B12}
.mbtrack .mbfill{transition:width .6s ease-in-out}
.gm.mb .bd{position:relative}
.gm.mb .mbbd{display:flex;flex-direction:column;gap:8px;justify-content:center}
.gm.mb .mbbd>.abub{align-self:center}
.gm.mb .mbmid{padding:0 6px}
@media(max-width:899px){
  .mbmid{flex-direction:column;align-items:stretch;gap:10px}
  .mbpile{justify-content:center}
  .mbscale{margin-left:104px}
  .mblane{grid-template-columns:90px 1fr}
  .mbn span:first-child{font-size:12px}
}

/* Dos de carte : cartes/CarteBack.svg ; sans fichier, le motif CSS et le texte « MB » reviennent */
.mbc.back:not(.nofig){background:none}
.mbc.back img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;display:block;border-radius:inherit}
.mbc.back span{position:relative}
.mbc.back.nofig img{display:none}
