/* Tokens calcados de SmartHub (src/app/globals.css): claro por defecto, .dark en <html>. */
:root {
  color-scheme: light;
  --fondo: #EEF2F7; --tarjeta: #FFFFFF; --hundido: #F1F5F9; --elevado: #E2E8F0;
  --texto: #0F172A; --suave: #334155; --tenue: #64748B;
  --borde: rgba(15, 23, 42, .12); --borde2: rgba(15, 23, 42, .20);
  --primario: #3478BB; --primario-tinta: #2f6aa8; --sobre-primario: #FFFFFF;
  --verde: #059669; --verde-tinta: #047857; --verde-fondo: rgba(5, 150, 105, .10);
  --ambar: #D97706; --ambar-tinta: #B45309; --ambar-fondo: rgba(217, 119, 6, .11);
  --rojo: #DC2626; --rojo-tinta: #B91C1C; --rojo-fondo: rgba(220, 38, 38, .09);
  --gris: #94A3B8; --pista: rgba(15, 23, 42, .08);
  --sombra: 0 1px 2px rgba(15, 23, 42, .06), 0 1px 3px rgba(15, 23, 42, .04);
  --halo: .18; --brillo: 0;
  --radio: 16px;
}
html.dark {
  color-scheme: dark;
  --fondo: #0F1117; --tarjeta: #1A1D2E; --hundido: #151827; --elevado: #1E2757;
  --texto: #F1F5F9; --suave: #CBD5E1; --tenue: #94A3B8;
  --borde: rgba(255, 255, 255, .14); --borde2: rgba(255, 255, 255, .22);
  --primario: #3478BB; --primario-tinta: #7db2e8; --sobre-primario: #FFFFFF;
  --verde: #10B981; --verde-tinta: #34D399; --verde-fondo: rgba(16, 185, 129, .13);
  --ambar: #F59E0B; --ambar-tinta: #FBBF24; --ambar-fondo: rgba(245, 158, 11, .13);
  --rojo: #EF4444; --rojo-tinta: #FCA5A5; --rojo-fondo: rgba(239, 68, 68, .14);
  --gris: #64748B; --pista: rgba(255, 255, 255, .09);
  --sombra: none;
  --halo: .22; --brillo: .55;
}

* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; }
body {
  margin: 0; background: var(--fondo); color: var(--suave); min-height: 100vh;
  font: 400 15px/1.5 Geist, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}
h1, h2, h3 { color: var(--texto); margin: 0; font-weight: 600; letter-spacing: -.015em; }
a { color: var(--primario-tinta); text-decoration: none; }
a:hover { text-decoration: underline; }
.marco { max-width: 1240px; margin: 0 auto; padding: 0 16px 56px; }

/* cabecera */
.cabecera { display: flex; align-items: center; gap: 14px; padding: 16px 0 20px; flex-wrap: wrap; }
.marca { display: flex; align-items: center; gap: 10px; color: var(--texto); font-weight: 700; font-size: 18px; letter-spacing: -.02em; }
.marca i { font-style: normal; }
.marca b { color: var(--primario-tinta); font-weight: 700; }
.marca span { color: var(--tenue); font-weight: 500; font-size: 13px; border-left: 1px solid var(--borde2); padding-left: 10px; letter-spacing: 0; }
.cabecera nav { margin-left: auto; display: flex; align-items: center; gap: 4px; font-size: 13.5px; }
.cabecera nav a, .cabecera nav button {
  color: var(--tenue); background: none; border: 1px solid transparent; border-radius: 10px;
  padding: 6px 12px; font: inherit; font-weight: 500; cursor: pointer; text-decoration: none;
}
.cabecera nav a:hover, .cabecera nav button:hover { background: var(--elevado); color: var(--texto); }
.cabecera nav a.activo { background: var(--tarjeta); border-color: var(--borde); color: var(--texto); box-shadow: var(--sombra); }
.cabecera nav form { margin: 0; }
.tema { display: grid; place-items: center; width: 34px; height: 34px; padding: 0 !important; }
.tema svg { width: 17px; height: 17px; }
.tema .luna, html.dark .tema .sol { display: none; }
html.dark .tema .luna { display: block; }
.tema-suelto { position: fixed; top: 14px; right: 14px; border: 1px solid var(--borde); border-radius: 10px; background: var(--tarjeta); color: var(--tenue); cursor: pointer; box-shadow: var(--sombra); }

/* semáforos */
.punto { width: 12px; height: 12px; border-radius: 50%; flex: none; background: var(--gris); }
.punto.verde { background: var(--verde); box-shadow: 0 0 0 4px rgba(16, 185, 129, var(--halo)), 0 0 14px rgba(16, 185, 129, var(--brillo)); }
.punto.ambar { background: var(--ambar); box-shadow: 0 0 0 4px rgba(245, 158, 11, var(--halo)), 0 0 14px rgba(245, 158, 11, var(--brillo)); }
.punto.rojo { background: var(--rojo); box-shadow: 0 0 0 4px rgba(239, 68, 68, var(--halo)), 0 0 14px rgba(239, 68, 68, var(--brillo)); animation: late 1.6s ease-in-out infinite; }
.punto.mini { width: 8px; height: 8px; box-shadow: none !important; animation: none; }
@keyframes late { 50% { box-shadow: 0 0 0 9px rgba(239, 68, 68, .07), 0 0 18px rgba(239, 68, 68, var(--brillo)); } }
@media (prefers-reduced-motion: reduce) { .punto.rojo { animation: none; } }

/* resumen grande */
.resumen { display: grid; grid-template-columns: 1.5fr 1fr 1fr; gap: 14px; margin-bottom: 26px; }
.panelazo, .dato, .proyecto, .servidor, .ficha, .caja {
  background: var(--tarjeta); border: 1px solid var(--borde); border-radius: var(--radio); box-shadow: var(--sombra);
}
.panelazo { padding: 24px 26px; display: flex; align-items: center; gap: 20px; position: relative; overflow: hidden; }
.panelazo::before { content: ""; position: absolute; inset: 0 auto 0 0; width: 5px; background: var(--gris); }
.panelazo.verde::before { background: var(--verde); } .panelazo.ambar::before { background: var(--ambar); } .panelazo.rojo::before { background: var(--rojo); }
.panelazo.verde { background: linear-gradient(100deg, var(--verde-fondo), var(--tarjeta) 60%); }
.panelazo.ambar { background: linear-gradient(100deg, var(--ambar-fondo), var(--tarjeta) 60%); }
.panelazo.rojo { background: linear-gradient(100deg, var(--rojo-fondo), var(--tarjeta) 60%); border-color: var(--rojo); }
.panelazo .punto { width: 22px; height: 22px; }
.panelazo h1 { font-size: clamp(22px, 2.6vw, 30px); line-height: 1.15; }
.panelazo p { margin: 5px 0 0; color: var(--tenue); font-size: 13.5px; }
.dato { padding: 20px 22px; }
.dato .n { font-weight: 600; font-size: 34px; line-height: 1; color: var(--texto); letter-spacing: -.03em; font-variant-numeric: tabular-nums; }
.dato .n small { font-size: 17px; color: var(--tenue); font-weight: 500; letter-spacing: 0; }
.dato .t { margin-top: 6px; font-size: 13.5px; color: var(--tenue); }
.barra { height: 7px; border-radius: 99px; background: var(--pista); margin-top: 12px; overflow: hidden; display: flex; }
.barra i { display: block; height: 100%; background: var(--primario); }
.barra i.medio { opacity: .45; }

.titulo { display: flex; align-items: baseline; gap: 12px; margin: 30px 0 14px; flex-wrap: wrap; }
.titulo h2 { font-size: 19px; }
.titulo span { color: var(--tenue); font-size: 13.5px; }

/* tarjetas de proyecto */
.rejilla { display: grid; grid-template-columns: repeat(auto-fill, minmax(350px, 1fr)); gap: 14px; }
.proyecto { padding: 18px 20px 16px; display: flex; flex-direction: column; gap: 13px; }
.proyecto.rojo { border-color: var(--rojo); background: linear-gradient(180deg, var(--rojo-fondo), var(--tarjeta) 42%); }
.proyecto.ambar { border-color: var(--ambar); }
.proyecto header { display: flex; align-items: center; gap: 13px; }
.proyecto h3 { font-size: 17.5px; line-height: 1.2; }
.veredicto { margin-left: auto; font-size: 12.5px; font-weight: 600; padding: 3px 11px; border-radius: 99px; white-space: nowrap; }
.veredicto.verde { color: var(--verde-tinta); background: var(--verde-fondo); }
.veredicto.ambar { color: var(--ambar-tinta); background: var(--ambar-fondo); }
.veredicto.rojo { color: var(--rojo-tinta); background: var(--rojo-fondo); }
.veredicto.gris { color: var(--tenue); background: var(--hundido); }
.proyecto .que { margin: 0; font-size: 14px; color: var(--suave); }
.aviso { margin: 0; font-size: 13.5px; border-radius: 10px; padding: 9px 12px; }
.aviso.rojo { background: var(--rojo-fondo); color: var(--rojo-tinta); }
.aviso.ambar { background: var(--ambar-fondo); color: var(--ambar-tinta); }
.aviso b { color: var(--texto); font-weight: 600; }

.piezas { list-style: none; margin: 0; padding: 0; border-top: 1px solid var(--borde); }
.piezas li { display: grid; grid-template-columns: 1fr auto; gap: 2px 10px; padding: 9px 0; border-bottom: 1px solid var(--borde); font-size: 13.5px; align-items: center; }
.piezas .nombre { display: flex; align-items: center; gap: 9px; color: var(--texto); font-weight: 500; min-width: 0; }
.piezas .nombre a { color: var(--tenue); font-weight: 400; font-size: 12.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.piezas .nombre a:hover { color: var(--primario-tinta); }
.piezas .ms { color: var(--tenue); font-size: 12px; font-family: "Geist Mono", ui-monospace, monospace; }
.piezas .prueba { grid-column: 1 / -1; display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--tenue); padding-left: 17px; }
.piezas .prueba em { font-style: normal; color: var(--primario-tinta); background: rgba(52, 120, 187, .12); border-radius: 99px; padding: 0 8px; font-size: 11.5px; font-weight: 500; }

.historia { display: flex; flex-direction: column; gap: 6px; }
.historia .rotulo { display: flex; justify-content: space-between; font-size: 12px; color: var(--tenue); }
.historia .rotulo b { color: var(--suave); font-weight: 600; }
.tramos { display: flex; gap: 2px; height: 22px; }
.tramos i { flex: 1; border-radius: 2px; background: var(--pista); }
.tramos i.verde { background: var(--verde); opacity: .8; } .tramos i.rojo { background: var(--rojo); }

/* mudanza: de dónde a dónde, y en qué paso */
.piezas .host { color: var(--tenue); }
.probar { border: 1px solid rgba(52, 120, 187, .35); background: rgba(52, 120, 187, .06); border-radius: 12px; padding: 11px 13px 12px; font-size: 13px; color: var(--suave); }
.probar .cab { display: flex; align-items: center; justify-content: space-between; gap: 10px; flex-wrap: wrap; margin-bottom: 6px; }
.probar .cab b { color: var(--texto); font-weight: 600; font-size: 13.5px; }
.probar .abrir { background: var(--primario); color: var(--sobre-primario); border-radius: 99px; padding: 4px 13px; font-weight: 600; font-size: 12.5px; text-decoration: none; white-space: nowrap; }
.probar .abrir:hover { filter: brightness(1.08); }
.probar .sin { color: var(--tenue); font-size: 12px; }
.probar p { margin: 0; line-height: 1.45; }
.probar ul { margin: 7px 0 0; padding-left: 18px; color: var(--tenue); font-size: 12.5px; line-height: 1.45; }
.probar ul li + li { margin-top: 2px; }
.mudanza { margin-top: auto; background: var(--hundido); border: 1px solid var(--borde); border-radius: 12px; padding: 11px 13px 12px; }
.mudanza .ruta { display: flex; align-items: flex-start; gap: 10px; font-size: 12.5px; color: var(--tenue); }
.mudanza .ruta .tramo { flex: 1; min-width: 0; }
.mudanza .ruta b { color: var(--suave); font-weight: 600; }
.mudanza .ruta .flecha { color: var(--primario-tinta); margin: 0 5px; }
.mudanza .ruta .fase { flex: none; white-space: nowrap; color: var(--primario-tinta); background: rgba(52, 120, 187, .12); border-radius: 99px; padding: 0 9px; font-size: 11.5px; font-weight: 600; }
.pasos { display: grid; grid-template-columns: repeat(4, 1fr); gap: 5px; margin-top: 10px; }
.pasos div { font-size: 11.5px; color: var(--gris); text-align: center; }
.pasos div::before { content: ""; display: block; height: 5px; border-radius: 99px; background: var(--pista); margin-bottom: 5px; }
.pasos div.hecho::before { background: var(--primario); opacity: .5; }
.pasos div.actual { color: var(--texto); font-weight: 600; }
.pasos div.actual::before { background: var(--primario); }
.nota { margin: 0; font-size: 12.5px; color: var(--tenue); }

/* servidores */
.servidores { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 14px; }
.servidor { padding: 16px 18px; display: flex; flex-direction: column; gap: 10px; }
.servidor.nuevo { border-color: var(--primario); box-shadow: 0 0 0 3px rgba(52, 120, 187, .12), var(--sombra); }
.servidor header { display: flex; align-items: center; gap: 11px; }
.servidor h3 { font-size: 16px; }
.servidor .prov { font-size: 12.5px; color: var(--tenue); margin: 0; }
.servidor .papel { font-size: 13.5px; margin: 0; color: var(--suave); }
.servidor .destino { margin-top: auto; font-size: 12px; color: var(--tenue); border-top: 1px solid var(--borde); padding-top: 9px; }
.servidor.nuevo .destino { color: var(--primario-tinta); font-weight: 600; }
.medidor { display: grid; grid-template-columns: 82px 1fr 40px; align-items: center; gap: 9px; font-size: 12.5px; color: var(--tenue); }
.medidor .barra { margin: 0; }
.medidor .barra i.ok { background: var(--verde); } .medidor .barra i.medio { background: var(--ambar); opacity: 1; } .medidor .barra i.mal { background: var(--rojo); }
.medidor b { color: var(--texto); font-weight: 600; text-align: right; font-variant-numeric: tabular-nums; }

.leyenda { display: flex; gap: 18px; flex-wrap: wrap; margin-top: 30px; padding-top: 16px; border-top: 1px solid var(--borde); font-size: 12.5px; color: var(--tenue); }
.leyenda span { display: inline-flex; align-items: center; gap: 7px; }

/* entrar y gestionar */
.centro { min-height: 100vh; display: grid; place-items: center; padding: 20px; }
.caja { width: 100%; max-width: 380px; padding: 30px 28px; }
.caja h1 { font-size: 22px; margin-bottom: 4px; }
.caja p { margin: 0 0 20px; color: var(--tenue); font-size: 13.5px; }
label { display: block; font-size: 12.5px; font-weight: 500; color: var(--tenue); margin: 14px 0 5px; }
input[type=text], input[type=password], input[type=url], select {
  width: 100%; padding: 9px 12px; border-radius: 10px; border: 1px solid var(--borde2);
  background: var(--tarjeta); color: var(--texto); font: inherit; font-size: 14px;
}
html.dark input[type=text], html.dark input[type=password], html.dark input[type=url], html.dark select { background: var(--hundido); }
input::placeholder { color: var(--gris); }
input:focus, select:focus { outline: none; border-color: var(--primario); box-shadow: 0 0 0 3px rgba(52, 120, 187, .22); }
button:focus-visible, a:focus-visible { outline: 2px solid var(--primario); outline-offset: 2px; }
.boton { margin-top: 20px; width: 100%; padding: 10px; border: 0; border-radius: 10px; background: var(--primario); color: var(--sobre-primario); font: 600 14.5px Geist, sans-serif; cursor: pointer; }
.boton:hover { filter: brightness(1.08); }
.error { background: var(--rojo-fondo); color: var(--rojo-tinta); border-radius: 10px; padding: 9px 12px; font-size: 13.5px; margin-bottom: 4px; }
.exito { background: var(--verde-fondo); color: var(--verde-tinta); border-radius: 10px; padding: 9px 12px; font-size: 13.5px; margin-bottom: 16px; }
.ficha { padding: 16px 18px; margin-bottom: 12px; display: grid; grid-template-columns: 1fr 200px; gap: 8px 18px; align-items: start; }
.ficha h3 { font-size: 16px; }
.ficha .campo { grid-column: 1 / -1; display: grid; grid-template-columns: 170px 1fr; align-items: center; gap: 10px; font-size: 13px; color: var(--suave); }
.ficha .campo small { display: block; color: var(--tenue); font-size: 11.5px; }
.pie-form { position: sticky; bottom: 0; padding: 14px 0; background: linear-gradient(transparent, var(--fondo) 35%); }
.pie-form .boton { width: auto; padding: 10px 26px; margin: 0; }

@media (max-width: 860px) {
  .resumen { grid-template-columns: 1fr 1fr; } .panelazo { grid-column: 1 / -1; }
  .rejilla { grid-template-columns: 1fr; }
  .ficha, .ficha .campo { grid-template-columns: 1fr; }
  .marca span { display: none; }
}

/* ── Panel de automatizaciones ─────────────────────────────────────────────── */
.cifras { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; margin-bottom: 8px; }
.cifra { background: var(--tarjeta); border: 1px solid var(--borde); border-radius: var(--radio); padding: 14px 16px; box-shadow: var(--sombra); }
.cifra b { display: block; font-size: 26px; line-height: 1.1; font-weight: 600; }
.cifra span { color: var(--tenue); font-size: 12.5px; }
.cifra.rojo b { color: var(--rojo-tinta); } .cifra.ambar b { color: var(--ambar-tinta); } .cifra.verde b { color: var(--verde-tinta); }

.autos { display: grid; gap: 12px; }
.auto { background: var(--tarjeta); border: 1px solid var(--borde); border-radius: var(--radio); box-shadow: var(--sombra); padding: 16px 18px; display: grid; grid-template-columns: auto 1fr auto; gap: 6px 14px; align-items: center; text-decoration: none; color: inherit; }
.auto:hover { border-color: var(--borde2); }
.auto.apagada { opacity: .78; }
.auto h3 { font-size: 16px; margin: 0; }
.auto .que { grid-column: 2 / 3; margin: 0; color: var(--suave); font-size: 13.5px; }
.auto .datos { grid-column: 2 / -1; display: flex; gap: 6px 16px; flex-wrap: wrap; font-size: 12.5px; color: var(--tenue); }
.auto .datos b { color: var(--suave); font-weight: 600; }

.chip { display: inline-flex; align-items: center; gap: 6px; border-radius: 99px; padding: 2px 10px; font-size: 11.5px; font-weight: 600; white-space: nowrap; background: var(--pista); color: var(--tenue); }
.chip.on, .chip.hecho { background: var(--verde-fondo); color: var(--verde-tinta); }
.chip.reintentando, .chip.retenido, .chip.pendiente, .chip.en_curso { background: var(--ambar-fondo); color: var(--ambar-tinta); }
.chip.apartado { background: var(--rojo-fondo); color: var(--rojo-tinta); }
.chip.azul { background: rgba(52, 120, 187, .12); color: var(--primario-tinta); }

.hoja { background: var(--tarjeta); border: 1px solid var(--borde); border-radius: var(--radio); box-shadow: var(--sombra); padding: 20px 22px; display: grid; gap: 14px; }
.hoja h1 { font-size: 22px; margin: 0; }
.hoja .fila { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.hoja p { margin: 0; color: var(--suave); font-size: 14.5px; }
.hoja dl { display: grid; grid-template-columns: max-content 1fr; gap: 6px 16px; margin: 0; font-size: 13.5px; }
.hoja dt { color: var(--tenue); } .hoja dd { margin: 0; color: var(--suave); overflow-wrap: anywhere; }
.hoja ol { margin: 0; padding-left: 20px; color: var(--suave); font-size: 14px; line-height: 1.55; }
.hoja code, .mono { font-family: "Geist Mono", ui-monospace, monospace; font-size: 12.5px; }

.interruptor { margin-left: auto; display: flex; align-items: center; gap: 10px; }
.interruptor button { border: 1px solid var(--borde2); background: var(--tarjeta); color: var(--texto); border-radius: 10px; padding: 8px 16px; font: 600 13.5px Geist, sans-serif; cursor: pointer; }
.interruptor button.encender { background: var(--verde); border-color: transparent; color: #fff; }
.interruptor button.apagar { background: var(--tarjeta); color: var(--rojo-tinta); }
.interruptor button:hover { filter: brightness(1.06); }

.filtros { display: flex; gap: 6px; flex-wrap: wrap; margin: 4px 0 12px; }
.filtros a { text-decoration: none; font-size: 13px; color: var(--tenue); padding: 5px 12px; border-radius: 99px; border: 1px solid transparent; }
.filtros a.activo { background: var(--tarjeta); border-color: var(--borde); color: var(--texto); box-shadow: var(--sombra); }
.filtros a b { font-weight: 600; margin-left: 4px; }

.tabla { width: 100%; border-collapse: collapse; background: var(--tarjeta); border: 1px solid var(--borde); border-radius: var(--radio); overflow: hidden; box-shadow: var(--sombra); font-size: 13.5px; }
.tabla th { text-align: left; font-weight: 500; color: var(--tenue); font-size: 12px; padding: 10px 14px; border-bottom: 1px solid var(--borde); background: var(--hundido); }
.tabla td { padding: 10px 14px; border-bottom: 1px solid var(--borde); vertical-align: top; }
.tabla tr:last-child td { border-bottom: 0; }
.tabla tr:hover td { background: var(--hundido); }
.tabla a { color: var(--primario-tinta); text-decoration: none; font-weight: 500; }
.tabla .err { color: var(--rojo-tinta); font-size: 12.5px; overflow-wrap: anywhere; }
.tabla .t { color: var(--tenue); white-space: nowrap; }
.envoltura-tabla { overflow-x: auto; }
.vacio { color: var(--tenue); font-size: 14px; padding: 26px; text-align: center; background: var(--tarjeta); border: 1px dashed var(--borde2); border-radius: var(--radio); }

.linea { list-style: none; margin: 0; padding: 0; display: grid; gap: 0; }
.linea li { display: grid; grid-template-columns: 74px 18px 1fr; gap: 10px; padding: 7px 0; font-size: 13.5px; align-items: start; }
.linea .hora { color: var(--tenue); font-size: 12px; text-align: right; padding-top: 1px; }
.linea .bola { width: 10px; height: 10px; border-radius: 50%; background: var(--gris); margin: 5px auto 0; }
.linea .paso_ok .bola, .linea .hecho .bola { background: var(--verde); }
.linea .fallo .bola, .linea .retenido .bola { background: var(--ambar); }
.linea .apartado .bola { background: var(--rojo); }
.linea .relanzado .bola, .linea .recibido .bola { background: var(--primario); }
.linea small { display: block; color: var(--tenue); overflow-wrap: anywhere; }

.acciones { display: flex; gap: 8px; flex-wrap: wrap; }
.acciones form { margin: 0; }
.acciones button { border: 1px solid var(--borde2); background: var(--tarjeta); color: var(--texto); border-radius: 10px; padding: 7px 14px; font: 500 13px Geist, sans-serif; cursor: pointer; }
.acciones button.principal { background: var(--primario); color: #fff; border-color: transparent; }
.acciones button.peligro { color: var(--rojo-tinta); }
details.datos-crudos { background: var(--tarjeta); border: 1px solid var(--borde); border-radius: 12px; padding: 10px 14px; font-size: 13px; }
details.datos-crudos summary { cursor: pointer; color: var(--suave); font-weight: 500; }
details.datos-crudos pre { margin: 10px 0 2px; white-space: pre-wrap; overflow-wrap: anywhere; font-family: "Geist Mono", ui-monospace, monospace; font-size: 12px; color: var(--suave); max-height: 420px; overflow: auto; }
.migas { font-size: 13px; color: var(--tenue); margin: 0 0 12px; } .migas a { color: var(--primario-tinta); text-decoration: none; }
.nota-aviso { background: var(--ambar-fondo); color: var(--ambar-tinta); border-radius: 10px; padding: 9px 12px; font-size: 13.5px; }
.nota-error { background: var(--rojo-fondo); color: var(--rojo-tinta); border-radius: 10px; padding: 9px 12px; font-size: 13.5px; overflow-wrap: anywhere; }
@media (max-width: 640px) { .auto { grid-template-columns: auto 1fr; } .auto .chip.estado { grid-column: 2; justify-self: start; } .linea li { grid-template-columns: 58px 14px 1fr; } }
