/* ============================================================
   DANGOFE OS · TALLER · CAMBIAR LOS DATOS DEL EQUIPO · 2026-10-17 · chat de Diseño · v2 (2026-10-20): la IA lee la etiqueta
   Karla: «quiero en el taller poder editar el nombre de un equipo ya ingresado».
   En la ficha del servicio, la celda «Equipo» del resumen (.tal-sumgrid > .tal-rcell) gana un «Cambiar» que abre un
   formulario corto: Marca, Modelo, Capacidad y Serie + Guardar / Cancelar. Si la comisión del técnico ya quedó
   fijada, la Capacidad sale bloqueada con la nota «La capacidad ya fijó la comisión del técnico; no se cambia aquí».
   Tres versiones (data-v en el formulario): A · En la celda (debajo de «Cambiar», en una columna) ·
   B · Tarjeta debajo (una tarjeta a lo ancho del resumen) · C · Hoja (una hoja que sube desde abajo; en pantalla
   grande, un diálogo centrado). Liquid glass, sin sombras, sin desenfoque de fondo en la hoja. Va con taller-equipo.js.
   v2: el bloque .tal-eq-ia (1 · Botón · 2 · Tarjeta con foto · 3 · Primero la foto), la línea de estado y los campos «· IA».
   ============================================================ */
.tal-eq-cambiar { margin-top: 2px; align-self: flex-start; }
.tal-eq-cambiar svg { width: 13px; height: 13px; }
.tal-eq-form { margin: 0; min-width: 0; }
.tal-eq-form[hidden] { display: none !important; }
.tal-eq-campos { display: grid; gap: 8px 10px; }
.tal-eq-campo { display: flex; flex-direction: column; gap: 4px; min-width: 0; }
.tal-eq-campo > span { font-size: .72rem; letter-spacing: .03em; text-transform: uppercase; opacity: .72; font-weight: 600; }
.tal-eq-campo input, .tal-eq-campo select {
  width: 100%; box-sizing: border-box; padding: 8px 11px; border-radius: 11px; border: 1px solid var(--glass-border);
  background: var(--glass-bg-input); color: inherit; font: inherit; font-size: .9rem; font-weight: 600; outline: none; transition: border-color .15s ease;
}
.tal-eq-campo input:focus, .tal-eq-campo select:focus { border-color: rgba(99, 132, 255, .65); }
.tal-eq-campo input[disabled], .tal-eq-campo select[disabled] { opacity: .55; cursor: not-allowed; background: var(--glass-bg-soft); }
.tal-eq-campo.is-fija > span::after { content: ' · fija'; text-transform: none; letter-spacing: 0; opacity: .8; }
.tal-eq-nota { display: flex; align-items: flex-start; gap: 6px; margin: 8px 0 0; font-size: .78rem; line-height: 1.35; color: var(--text-secondary); font-weight: 500; }
.tal-eq-nota svg { width: 14px; height: 14px; flex: 0 0 auto; margin-top: 1px; opacity: .8; }
.tal-eq-nota[hidden] { display: none !important; }
.tal-eq-acc { display: flex; gap: 8px; margin-top: 10px; flex-wrap: wrap; }
.tal-eq-acc .tal-btn { min-height: 34px; }
.tal-eq-form.is-guardando .tal-btn { opacity: .6; pointer-events: none; }
.tal-eq-error { margin: 8px 0 0; font-size: .8rem; color: rgb(220, 38, 38); font-weight: 600; }
.tal-eq-error[hidden] { display: none !important; }

/* ---------- A · En la celda: una columna debajo de «Cambiar» ---------- */
.tal-eq-form[data-v='A'] { margin-top: 8px; padding: 10px 11px 11px; border-radius: 13px; background: var(--glass-bg-soft); border: 1px solid var(--glass-border); }
.tal-eq-form[data-v='A'] .tal-eq-campos { grid-template-columns: 1fr; }
.tal-eq-form[data-v='A'] .tal-eq-campo input, .tal-eq-form[data-v='A'] .tal-eq-campo select { padding: 7px 10px; font-size: .86rem; }
.tal-eq-form[data-v='A'] .tal-eq-acc .tal-btn { flex: 1 1 auto; }

/* ---------- B · Tarjeta debajo: a lo ancho del resumen (taller-equipo.js la mueve al final de .tal-sumgrid) ---------- */
.tal-eq-form[data-v='B'] { grid-column: 1 / -1; padding: 12px 14px 13px; border-radius: 14px; background: var(--glass-bg-soft); border: 1px solid var(--glass-border); }
.tal-eq-form[data-v='B'] .tal-eq-tit { display: flex; align-items: center; gap: 7px; margin: 0 0 10px; font-size: .9rem; font-weight: 700; }
.tal-eq-form[data-v='B'] .tal-eq-tit svg { width: 15px; height: 15px; opacity: .85; }
.tal-eq-form[data-v='B'] .tal-eq-campos { grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); }
.tal-eq-form[data-v='B'] .tal-eq-acc { justify-content: flex-end; }

/* ---------- C · Hoja: sube desde abajo; en pantalla grande, diálogo centrado ---------- */
.tal-eq-velo { position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 10040; background: rgba(10, 16, 40, .45); display: flex; align-items: flex-end; justify-content: center; }
.tal-eq-hoja { position: relative; width: 100%; max-width: 100%; max-height: 92vh; overflow: auto; padding: 14px 16px calc(16px + env(safe-area-inset-bottom, 0px)); border-radius: 22px 22px 0 0;
  background: var(--glass-bg-strong, rgba(255, 255, 255, .94)); border: 1px solid var(--glass-border); color: var(--text-primary); transform: translateY(24px); opacity: 0; animation: tal-eq-sube .25s ease-out both; }
:root, [data-theme='light'] { --tal-eq-hoja: rgba(255, 255, 255, .96); }
[data-theme='dark'] { --tal-eq-hoja: rgba(12, 19, 46, .96); }
.tal-eq-hoja { background: var(--tal-eq-hoja); }
@keyframes tal-eq-sube { to { transform: translateY(0); opacity: 1; } }
.tal-eq-hoja__asa { width: 40px; height: 4px; border-radius: 999px; margin: 0 auto 10px; background: var(--glass-border); }
.tal-eq-hoja__cab { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 12px; }
.tal-eq-hoja__cab h4 { margin: 0; display: flex; align-items: center; gap: 8px; font-size: 1.02rem; }
.tal-eq-hoja__cab h4 svg { width: 16px; height: 16px; opacity: .85; }
.tal-eq-hoja__x { appearance: none; border: 1px solid var(--glass-border); background: var(--glass-bg-input); color: inherit; width: 34px; height: 34px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; }
.tal-eq-hoja__x svg { width: 15px; height: 15px; }
.tal-eq-form[data-v='C'] .tal-eq-campos { grid-template-columns: 1fr 1fr; }
.tal-eq-form[data-v='C'] .tal-eq-acc { margin-top: 14px; }
.tal-eq-form[data-v='C'] .tal-eq-acc .tal-btn { flex: 1 1 auto; min-height: 42px; }
@media (min-width: 700px) {
  .tal-eq-velo { align-items: center; padding: 20px; }
  .tal-eq-hoja { max-width: 440px; border-radius: 22px; padding: 16px 18px 18px; }
  .tal-eq-hoja__asa { display: none; }
}

/* ---------- v2 · la IA lee la etiqueta (solo si montar() recibe leerEtiqueta) ---------- */
.tal-eq-ia { --tal-eq-azul: var(--tp-azul, #0b3dd6); display: flex; flex-direction: column; gap: 8px; margin: 0 0 10px; min-width: 0; }
[data-theme='dark'] .tal-eq-ia { --tal-eq-azul: #8db0ff; }
.tal-eq-ia[hidden] { display: none !important; }
.tal-eq-ia__file { position: absolute; width: 1px; height: 1px; opacity: 0; pointer-events: none; }
/* 1 · Botón */
.tal-eq-ia__link { align-self: flex-start; display: inline-flex; align-items: center; gap: 6px; font-weight: 700; font-size: .84rem; color: var(--tal-eq-azul); }
.tal-eq-ia__link svg { width: 14px; height: 14px; }
.tal-eq-ia__pista { display: block; margin: -4px 0 0; font-size: .74rem; line-height: 1.35; color: var(--text-secondary); }
/* 2 · Tarjeta con foto · 3 · Primero la foto */
.tal-eq-ia__tile { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; padding: 10px 12px; border-radius: 14px; border: 1px solid var(--glass-border); background: var(--glass-bg-input); }
.tal-eq-ia__foto { flex: none; width: 52px; height: 52px; border-radius: 12px; display: grid; place-items: center; overflow: hidden; background: rgba(59, 130, 246, .13); color: var(--tal-eq-azul); }
.tal-eq-ia__foto svg { width: 22px; height: 22px; }
.tal-eq-ia__foto img { width: 100%; height: 100%; object-fit: cover; display: block; }
.tal-eq-ia__txt { flex: 1 1 160px; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.tal-eq-ia__txt b { font-size: .92rem; font-weight: 800; line-height: 1.25; }
.tal-eq-ia__txt small { font-size: .78rem; line-height: 1.35; color: var(--text-secondary); }
.tal-eq-ia__btns { display: flex; gap: 6px; flex-wrap: wrap; }
.tal-eq-ia__btns .tal-btn { min-height: 34px; }
.tal-eq-ia__btns .tal-btn svg { width: 14px; height: 14px; }
/* la línea de estado: leyendo · ok · aviso · error */
.tal-eq-ia__estado { display: flex; align-items: flex-start; flex-wrap: wrap; gap: 6px 8px; margin: 0; padding: 8px 10px; border-radius: 11px; font-size: .8rem; line-height: 1.35; font-weight: 600; border: 1px solid var(--glass-border); background: var(--glass-bg-soft); color: var(--text-secondary); }
.tal-eq-ia__estado[hidden] { display: none !important; }
.tal-eq-ia__estado > svg { flex: none; width: 15px; height: 15px; margin-top: 1px; }
.tal-eq-ia__estado > span:first-of-type { flex: 1 1 160px; min-width: 0; }
.tal-eq-ia__estado.is-leyendo > svg { color: var(--tal-eq-azul); animation: tal-eq-late 1s ease-in-out 4 both; }
.tal-eq-ia__estado.is-ok { border-color: rgba(34, 197, 94, .4); background: rgba(34, 197, 94, .08); color: #15724a; }
.tal-eq-ia__estado.is-aviso { border-color: rgba(245, 158, 11, .45); background: rgba(245, 158, 11, .1); color: #9a5b00; }
.tal-eq-ia__estado.is-error { border-color: rgba(239, 68, 68, .35); background: rgba(239, 68, 68, .07); color: #b42318; }
[data-theme='dark'] .tal-eq-ia__estado.is-ok { color: #86efac; }
[data-theme='dark'] .tal-eq-ia__estado.is-aviso { color: #fcd34d; }
[data-theme='dark'] .tal-eq-ia__estado.is-error { color: #ff8a7a; }
.tal-eq-ia__acc { display: inline-flex; gap: 12px; flex-wrap: wrap; width: 100%; }
.tal-eq-ia__acc .tal-linkbtn { display: inline-flex; align-items: center; gap: 5px; font-size: .8rem; font-weight: 700; color: inherit; }
.tal-eq-ia__acc .tal-linkbtn svg { width: 13px; height: 13px; }
@keyframes tal-eq-late { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.18); } }
/* los campos que llenó la IA: «· IA» junto al nombre y borde azul suave hasta que se editen */
.tal-eq-campo.is-ia > span::after { content: ' · IA'; text-transform: none; letter-spacing: 0; opacity: 1; font-weight: 800; color: var(--tp-azul, #0b3dd6); }
[data-theme='dark'] .tal-eq-campo.is-ia > span::after { color: #8db0ff; }
.tal-eq-campo.is-ia input, .tal-eq-campo.is-ia select { border-color: rgba(59, 130, 246, .55); background: rgba(59, 130, 246, .07); }
/* 3 · Primero la foto: mientras pregunta, los campos esperan */
.tal-eq-form.is-ia-paso .tal-eq-campos, .tal-eq-form.is-ia-paso .tal-eq-nota, .tal-eq-form.is-ia-paso .tal-eq-error, .tal-eq-form.is-ia-paso .tal-eq-acc { display: none !important; }
.tal-eq-form.is-ia-paso .tal-eq-ia { margin-bottom: 0; }
.tal-eq-form.is-ia-leyendo [data-eq-ia="foto"], .tal-eq-form.is-ia-leyendo [data-eq-ia="saltar"] { opacity: .6; pointer-events: none; }
/* según la versión del formulario */
.tal-eq-form[data-v='A'] .tal-eq-ia__tile { padding: 9px 10px; gap: 10px; }
.tal-eq-form[data-v='A'] .tal-eq-ia__foto { width: 44px; height: 44px; }
.tal-eq-form[data-v='A'] .tal-eq-ia__btns { width: 100%; }
.tal-eq-form[data-v='A'] .tal-eq-ia__btns .tal-btn { flex: 1 1 auto; }
.tal-eq-form[data-v='C'] .tal-eq-ia__btns .tal-btn { min-height: 38px; }

@media (prefers-reduced-motion: reduce) { .tal-eq-hoja { animation: none; transform: none; opacity: 1; } .tal-eq-ia__estado.is-leyendo > svg { animation: none; } }
