/* Laboratorio de celulares. Los dibujos de objetos llevan colores fijos; el resto usa los tokens del laboratorio. */
.lab-cel-mesa { display: flex; flex-wrap: wrap; gap: 18px; align-items: flex-start; padding: 14px; border: 2px solid var(--lab-borde); border-radius: 14px; background: var(--lab-piso); }
.lab-cel-fig { flex: 1 1 260px; max-width: 360px; min-width: 0; }
.lab-cel-fig.apagada .lab-cel-svg { opacity: .35; }
.lab-cel-svg { width: 100%; height: auto; display: block; }
.lab-cel-panel { flex: 1 1 280px; min-width: 0; display: grid; gap: 10px; }
.lab-cel-panel h3 { margin: 4px 0 0; }
.lab-cel-click { cursor: pointer; }
.lab-cel-click:hover, .lab-cel-click:focus { outline: none; filter: drop-shadow(0 0 4px #ffd24a) drop-shadow(0 0 2px #ffd24a); }
.lab-cel-acciones { display: flex; flex-wrap: wrap; gap: 10px; align-items: stretch; }
.lab-cel-acciones .btn { min-height: 44px; }
.lab-cel-con { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; padding: 8px; border: 2px dashed var(--lab-borde); border-radius: 10px; min-width: 0; max-width: 100%; }
.lab-cel-con select { flex: 1 1 180px; min-width: 0; }
.lab-cel-con select, .lab-cel-calor select { min-height: 44px; max-width: 100%; }
.lab-cel-prueba span[aria-hidden] { margin-right: .4em; }
.lab-cel-calor { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.lab-cel-herr { display: flex; flex-wrap: wrap; gap: 8px; }
.lab-cel-herr-b { min-height: 44px; padding: 0 12px; border: 2px solid var(--lab-borde); border-radius: 10px; background: var(--lab-caja); color: var(--tinta); font: inherit; font-weight: 600; cursor: pointer; }
.lab-cel-herr-b.activo { border-color: var(--tinta); box-shadow: 0 0 0 2px var(--tinta); background: var(--lab-piso); }
.lab-cel-bandeja { display: grid; gap: 10px; padding: 12px; border: 2px solid var(--lab-borde); border-radius: 14px; background: var(--lab-piso); }
.lab-cel-mano { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; padding: 10px; border-radius: 10px; background: var(--lab-caja); border: 2px solid var(--lab-borde); min-height: 64px; }
.lab-cel-mano.tiene { border-color: var(--tinta); }
.lab-cel-mano-t { display: flex; align-items: flex-end; gap: 10px; font-weight: 700; }
.lab-cel-casilleros { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; }
.lab-cel-casillero { display: grid; gap: 6px; justify-items: start; text-align: left; padding: 10px; min-height: 120px; border: 3px solid #8a7a5a; border-radius: 6px; background: var(--lab-caja); color: var(--tinta); font: inherit; cursor: pointer; }
.lab-cel-casillero:disabled { opacity: .6; cursor: default; }
.lab-cel-casillero:not(:disabled):hover { border-color: var(--tinta); }
.lab-cel-puestos { display: flex; gap: 8px; align-items: flex-end; min-height: 34px; }
.lab-cel-puestos .vacio { width: 20px; height: 26px; border: 2px dashed var(--lab-borde); border-radius: 4px; }
.lab-cel-diario { margin: 0; padding-left: 22px; display: grid; gap: 3px; }
.lab-cel-estado { margin: 0; padding: 10px 12px; border-radius: 10px; border: 2px solid currentColor; font-weight: 700; }
.lab-cel-estado.ok { color: var(--lab-bien); }
.lab-cel-estado.mal { color: var(--lab-mal); }
.lab-cel-prueba.ok { border-color: var(--lab-bien); }
.lab-cel-prueba.falla { border-color: var(--lab-mal); }
.lab-cel-puntos { display: grid; grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); gap: 6px; }
.lab-cel-punto { min-height: 44px; padding: 0 10px; text-align: left; border: 2px solid var(--lab-borde); border-left-width: 10px; border-radius: 8px; background: var(--lab-caja); color: var(--tinta); font: inherit; cursor: pointer; }
.lab-cel-punto.roja { border-left-color: #D9362B; border-color: var(--tinta); border-left-color: #D9362B; }
.lab-cel-punto.negra { border-left-color: #111; border-color: var(--tinta); }
.lab-cel-tornillo { display: block; flex: none; }
.lab-cel-icono { vertical-align: -7px; margin-right: 8px; flex: none; }
#laboratorio > * { min-width: 0; }
.lab-cel-acciones .btn, .lab-cel-con .btn { white-space: normal; max-width: 100%; }
.lab-cel-acciones > * { max-width: 100%; }
