/* BRASA 0.1 · R34 · accesos laterales plegables sobre la escena (REF-13/22; candidato ?lateralR34=1). */
.lat-raiz { position: fixed; inset: 0; z-index: 30; pointer-events: none; }
.lat-raiz[hidden] { display: none; }
.lat-col { position: absolute; top: var(--lat-top, 180px); display: grid; justify-items: center; gap: 6px; pointer-events: auto; }
.lat-col.izq { left: var(--lat-izq, 4px); } .lat-col.der { right: 4px; }
.lat-btn { position: relative; display: grid; justify-items: center; gap: 0; width: 60px; min-height: 58px; padding: 0; border: 0; background: none; color: #fff3d6; }
.lat-ico { display: grid; place-items: center; width: 42px; height: 42px; transform: rotate(45deg); border: 2px solid #c99a4a; border-radius: 8px; background: linear-gradient(135deg, #4a3a22, #241c10); box-shadow: 0 2px 0 #0008; }
.lat-ico svg { width: 26px; height: 26px; transform: rotate(-45deg); image-rendering: pixelated; }
.lat-btn b { margin-top: -6px; position: relative; font-size: 11px; font-weight: 800; text-shadow: 0 1px 0 #000, 0 0 4px #000, 0 0 2px #000; }
.lat-btn > i, .lat-pliega > i { position: absolute; top: -2px; right: 4px; width: 16px; height: 16px; line-height: 16px; border-radius: 50%; background: #d9412f; color: #fff; font-style: normal; font-weight: 800; font-size: 11px; text-align: center; box-shadow: 0 0 0 2px #fff3d6aa; }
.lat-pliega { position: relative; width: 44px; height: 44px; border: 0; background: none; color: var(--gold2); font-size: 20px; text-shadow: 0 1px 0 #000, 0 0 6px #000; }

@media (max-height: 420px) { .lat-col { grid-auto-flow: column; } }
.lat-raiz.justo .lat-col { gap: 1px; }
.lat-raiz.justo .lat-btn { min-height: 50px; width: 56px; }
.lat-raiz.justo .lat-ico { width: 34px; height: 34px; } .lat-raiz.justo .lat-ico svg { width: 22px; height: 22px; }
.lat-raiz.justo .lat-btn b { font-size: 10px; margin-top: -5px; }
/* Sin sitio para la columna entera: en fila bajo la cabecera, una a cada lado. */
.lat-raiz.minimo .lat-col { grid-auto-flow: column; align-items: start; }
