.plateau-jeu { flex: 1; min-height: 0; display: flex; flex-direction: column; }
.gm-joueurs { align-items: center; }
.lt-sac { font-size: 13px; color: var(--g-doux); white-space: nowrap; padding: 0 4px; }
.lt-plateau-cadre { flex: 1; min-height: 0; display: flex; align-items: center; justify-content: center; padding: 6px; container-type: size; }
.lt-plateau {
    width: min(100cqw, 100cqh); aspect-ratio: 1; display: grid; grid-template-columns: repeat(15, 1fr); grid-template-rows: repeat(15, 1fr); gap: 1px;
    background: #0f5132; border: 3px solid #0f5132; border-radius: 8px; box-shadow: 0 6px 24px rgba(0, 0, 0, .25);
}
@supports not (width: 1cqw) { .lt-plateau { width: min(96vw, calc(100vh - 260px)); } }
.lt-case {
    position: relative; border: 0; padding: 0; background: #e9e4d4; cursor: pointer; overflow: hidden;
    display: flex; align-items: center; justify-content: center; min-width: 0; min-height: 0;
}
.lt-case em { font-style: normal; font-weight: 800; font-size: min(1.25cqw, 1.25cqh); line-height: 1; text-align: center; color: rgba(255, 255, 255, .95); padding: 1px; }
@supports not (width: 1cqw) { .lt-case em { font-size: 6px; } }
.lt-case.b-MT { background: #d9480f; }
.lt-case.b-MD { background: #f59f9f; }
.lt-case.b-LT { background: #1971c2; }
.lt-case.b-LD { background: #8fc7ef; }
.lt-case.centre em { font-size: min(4cqw, 4cqh); }
.lt-tuile {
    position: relative; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center;
    background: linear-gradient(#fbe7b5, #f2cf86); color: #2d1e05; font-weight: 800; border-radius: 3px;
    font-size: min(3.6cqw, 3.6cqh); box-shadow: inset 0 -2px 0 rgba(0, 0, 0, .18);
}
@supports not (width: 1cqw) { .lt-tuile { font-size: 15px; } }
.lt-tuile small { position: absolute; right: 8%; bottom: 4%; font-size: .45em; font-weight: 700; }
.lt-tuile.joker { color: #b02a37; }
.lt-case.attente .lt-tuile { background: linear-gradient(#fff3bf, #ffd43b); box-shadow: 0 0 0 2px #1877f2 inset; }
.lt-case.dernier .lt-tuile { background: linear-gradient(#fdf0cf, #f6d58f); box-shadow: inset 0 0 0 2px #2f9e44; }
.lt-journal { margin: 0; padding: 0 10px; min-height: 18px; font-size: 12px; color: var(--g-doux); text-align: center; display: flex; flex-direction: column; }
.lt-chevalet { display: flex; justify-content: center; gap: 5px; padding: 6px 8px 0; }
.lt-place {
    width: min(12vw, 48px); aspect-ratio: 1; border: 0; padding: 0; background: rgba(0, 0, 0, .08); border-radius: 7px; cursor: pointer;
    transition: transform .12s;
}
.lt-place .lt-tuile { font-size: min(6.6vw, 26px); border-radius: 7px; box-shadow: inset 0 -3px 0 rgba(0, 0, 0, .2), 0 2px 4px rgba(0, 0, 0, .2); }
.lt-place.choisie { transform: translateY(-6px); }
.lt-place.choisie .lt-tuile { box-shadow: 0 0 0 3px #1877f2, 0 6px 10px rgba(0, 0, 0, .25); }
.lt-place.vide { opacity: .35; cursor: default; }
.lt-actions { padding-bottom: max(8px, env(safe-area-inset-bottom)); }
.lt-voile { position: absolute; inset: 0; z-index: 45; display: flex; align-items: center; justify-content: center; padding: 16px; background: rgba(15, 17, 21, .6); }
.lt-voile .lt-chevalet { padding: 4px 0 8px; }
.lt-alphabet { display: grid; grid-template-columns: repeat(7, 1fr); gap: 5px; }
.lt-alphabet button { border: 0; border-radius: 8px; padding: 9px 0; font-weight: 800; background: var(--g-carte-2); cursor: pointer; }
.lt-alphabet button:hover { background: var(--g-accent); color: #fff; }
