:root{--morado:#582a7c;--magenta:#9e1f63;--profundo:#3d1b58;--tinta:#1f1b24;--crema:#f7f3ec;--arena:#e6dfd2;--oro:#d1b786;--cian:#00bfd5;--verde:#4e9a1f;--gris:#6b6472;--rojo:#b3261e;--fondo:#fbf9f5;
  --seguro-arriba:env(safe-area-inset-top,0px);--seguro-abajo:env(safe-area-inset-bottom,0px)}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;padding:0;background:var(--fondo);color:var(--tinta);font-family:'Red Hat Display',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:17px;line-height:1.45;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font:inherit;color:inherit}
button{cursor:pointer}
.oculto{display:none!important}

/* Barra superior */
.barra{position:sticky;top:0;z-index:20;background:var(--profundo);color:#fff;padding:calc(10px + var(--seguro-arriba)) 16px 10px;display:flex;align-items:center;gap:12px;min-height:58px}
.barra h1{font-size:18px;font-weight:800;margin:0;flex:1;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.barra .atras{border:0;background:rgba(255,255,255,.12);color:#fff;width:40px;height:40px;border-radius:12px;font-size:22px;display:flex;align-items:center;justify-content:center}
.barra .ir-inicio{flex:none;border:0;background:rgba(255,255,255,.12);color:#fff;height:40px;border-radius:12px;padding:0 12px;display:flex;align-items:center;gap:6px;font:700 14px 'Red Hat Display',system-ui,sans-serif;cursor:pointer}
.barra .ir-inicio:hover,.barra .atras:hover{background:rgba(255,255,255,.22)}
.barra .ir-inicio:focus-visible,.barra .atras:focus-visible{outline:2px solid var(--oro);outline-offset:2px}
@media (max-width:420px){.barra .ir-inicio{width:40px;padding:0;justify-content:center}.barra .ir-inicio span{display:none}}
.estado-red{font-size:12px;font-weight:700;padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.14);white-space:nowrap}
.estado-red.sin{background:#f4c26b;color:#3d1b58}

main{padding:16px 16px calc(28px + var(--seguro-abajo));max-width:640px;margin:0 auto}

/* Login */
.login{min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding:32px 22px calc(32px + var(--seguro-abajo));max-width:440px;margin:0 auto}
.login .logo{background:#fff;border-radius:16px;padding:14px 18px;align-self:flex-start;box-shadow:0 1px 3px rgba(61,27,88,.08);margin-bottom:28px}
.login .logo img{height:54px;display:block}
.login h2{font-size:30px;line-height:1.1;font-weight:800;color:var(--profundo);margin:0 0 8px}
.login p{color:var(--gris);margin:0 0 24px}

/* Campos */
label.et{display:block;font-weight:700;font-size:15px;margin:0 0 6px;color:var(--profundo)}
label.et small{font-weight:500;color:var(--gris)}
.campo{margin-bottom:16px}
input[type=text],input[type=email],input[type=password],input[type=number],input[type=url],input[type=tel],input:not([type]),textarea,select{width:100%;padding:14px 14px;border:1.5px solid var(--arena);border-radius:14px;background:#fff;font-size:17px;outline:none;appearance:none}
input:focus,textarea:focus,select:focus{border-color:var(--morado);box-shadow:0 0 0 3px rgba(88,42,124,.15)}
textarea{min-height:90px;resize:vertical}
.ayuda{font-size:13px;color:var(--gris);margin-top:5px}
.error{background:#fdecea;color:var(--rojo);border-radius:12px;padding:12px 14px;font-size:15px;margin-bottom:14px;font-weight:600}

/* Botones */
.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:54px;border:0;border-radius:14px;padding:12px 18px;font-size:17px;font-weight:800;background:var(--morado);color:#fff;text-decoration:none}
.btn:active{transform:scale(.99)}
.btn[disabled]{opacity:.55}
.btn.sec{background:#fff;color:var(--profundo);border:1.5px solid var(--arena)}
.btn.verde{background:#2e7d32}
.btn.rojo{background:#fff;color:var(--rojo);border:1.5px solid #f2c7c3}
.btn.chico{min-height:44px;font-size:15px;padding:8px 14px;width:auto}
.fila-btn{display:flex;gap:10px}
.fila-btn .btn{flex:1}

/* Inicio */
.saludo{margin:4px 0 16px}
.saludo b{display:block;font-size:24px;font-weight:800;color:var(--profundo);line-height:1.15}
.saludo span{color:var(--gris);font-size:15px}
.cola{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff6e3;border:1.5px solid #f4d9a2;border-radius:14px;padding:12px 14px;margin-bottom:16px;font-size:15px}
.cola b{color:#7a4b00}
.grande{display:grid;gap:12px;margin-bottom:18px}
.tarjeta-accion{display:flex;align-items:center;gap:16px;width:100%;text-align:left;border:0;border-radius:18px;padding:18px;background:#fff;box-shadow:0 1px 0 var(--arena),0 2px 10px rgba(61,27,88,.06);min-height:88px}
.tarjeta-accion .ico{flex:none;width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center}
.tarjeta-accion .ico svg{width:30px;height:30px}
.tarjeta-accion b{display:block;font-size:19px;font-weight:800;color:var(--profundo);line-height:1.2}
.tarjeta-accion span{display:block;font-size:14px;color:var(--gris);margin-top:2px}
.secundarias{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.secundarias button{border:1.5px solid var(--arena);background:#fff;border-radius:16px;padding:14px 12px;text-align:left;min-height:78px}
.secundarias b{display:block;font-size:16px;color:var(--profundo)}
.secundarias span{font-size:13px;color:var(--gris)}
.insignia{display:inline-block;min-width:22px;padding:1px 7px;border-radius:999px;background:var(--magenta);color:#fff;font-size:12px;font-weight:800;text-align:center;margin-left:4px}
.pie-inicio{margin-top:26px;display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--gris)}
.pie-acc{display:flex;gap:18px;flex-wrap:wrap;justify-content:flex-end}
.pie-inicio button{border:0;background:none;color:var(--morado);font-weight:700;padding:8px 0}

/* Formulario */
.tarjeta{background:#fff;border-radius:18px;padding:16px;margin-bottom:14px;box-shadow:0 1px 0 var(--arena)}
.tarjeta h3{margin:0 0 10px;font-size:16px;font-weight:800;color:var(--profundo);display:flex;align-items:center;justify-content:space-between;gap:8px}
.paso{display:inline-flex;width:24px;height:24px;border-radius:50%;background:var(--morado);color:#fff;font-size:13px;align-items:center;justify-content:center;margin-right:8px;flex:none}
.mapa-captura{height:230px;border-radius:14px;overflow:hidden;background:var(--crema);margin:10px 0;position:relative}
.gps{display:flex;align-items:center;gap:10px;font-size:15px}
.gps .punto{width:12px;height:12px;border-radius:50%;background:#bbb;flex:none}
.gps .punto.bien{background:#2e7d32;box-shadow:0 0 0 4px rgba(46,125,50,.2)}
.gps .punto.regular{background:#e8a33d;box-shadow:0 0 0 4px rgba(232,163,61,.2)}
.gps .punto.buscando{background:var(--cian);animation:latido 1.2s infinite}
@keyframes latido{50%{box-shadow:0 0 0 7px rgba(0,191,213,.2)}}
.cerca-de{font-size:14px;color:var(--gris);margin-top:4px}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{border:1.5px solid var(--arena);background:#fff;border-radius:999px;padding:10px 16px;font-size:15px;font-weight:600;min-height:44px}
.chip[aria-pressed="true"]{background:var(--morado);border-color:var(--morado);color:#fff}
.fotos{display:flex;flex-wrap:wrap;gap:10px}
.foto{position:relative;width:92px;height:92px;border-radius:12px;overflow:hidden;background:var(--crema)}
.foto img{width:100%;height:100%;object-fit:cover;display:block}
.foto button{position:absolute;top:4px;right:4px;width:28px;height:28px;border-radius:50%;border:0;background:rgba(31,27,36,.7);color:#fff;font-size:16px;line-height:1}
.agregar-foto{width:92px;height:92px;border-radius:12px;border:2px dashed var(--oro);background:#fffaf0;color:var(--profundo);font-weight:700;font-size:13px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px}
.agregar-foto svg{width:28px;height:28px}
details.mas{background:#fff;border-radius:18px;margin-bottom:14px;box-shadow:0 1px 0 var(--arena)}
details.mas summary{list-style:none;padding:16px;font-weight:800;color:var(--profundo);display:flex;justify-content:space-between;align-items:center;cursor:pointer}
details.mas summary::-webkit-details-marker{display:none}
details.mas summary::after{content:"+";font-size:22px;color:var(--morado)}
details.mas[open] summary::after{content:"–"}
details.mas .dentro{padding:0 16px 6px}
.dos{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.guardar-fijo{position:sticky;bottom:0;padding:12px 0 calc(12px + var(--seguro-abajo));background:linear-gradient(180deg,rgba(251,249,245,0),var(--fondo) 30%)}

/* Listas */
.lista{display:grid;gap:10px}
.item{display:flex;gap:12px;align-items:center;background:#fff;border-radius:16px;padding:12px;border:0;width:100%;text-align:left;box-shadow:0 1px 0 var(--arena)}
.item .mini{flex:none;width:56px;height:56px;border-radius:12px;background:var(--crema);overflow:hidden;display:flex;align-items:center;justify-content:center}
.item .mini img{width:100%;height:100%;object-fit:cover}
.item .mini svg{width:28px;height:28px}
.item .txt{flex:1;min-width:0}
.item b{display:block;font-size:16px;color:var(--profundo);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.item small{display:block;font-size:13px;color:var(--gris)}
.estado{display:inline-block;font-size:11.5px;font-weight:800;padding:2px 8px;border-radius:999px;margin-top:4px;text-transform:uppercase;letter-spacing:.03em}
.estado.pendiente{background:#fff1d6;color:#7a4b00}
.estado.aprobado{background:#e3f3e5;color:#1e6b25}
.estado.rechazado{background:#fdecea;color:var(--rojo)}
.estado.cola{background:#e6f7fa;color:#00616d}
.estado.err{background:#fdecea;color:var(--rojo)}
.vacio{text-align:center;color:var(--gris);padding:30px 12px}
.vacio b{display:block;color:var(--profundo);font-size:18px;margin-bottom:4px}

/* Revisión */
.rev{background:#fff;border-radius:18px;padding:14px;box-shadow:0 1px 0 var(--arena);margin-bottom:14px}
.rev .galeria{display:flex;gap:8px;overflow-x:auto;margin:10px 0}
.rev .galeria img{height:140px;border-radius:10px;flex:none}
.rev dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;font-size:14px;margin:10px 0}
.rev dt{color:var(--gris)} .rev dd{margin:0;font-weight:600}

#aviso{position:fixed;left:16px;right:16px;bottom:calc(18px + var(--seguro-abajo));z-index:50;max-width:560px;margin:0 auto;background:var(--tinta);color:#fff;border-radius:14px;padding:14px 16px;font-size:15px;font-weight:600;box-shadow:0 8px 24px rgba(0,0,0,.25);transform:translateY(160%);transition:transform .25s}
#aviso.ver{transform:none}
#aviso.ok{background:#1e6b25} #aviso.mal{background:var(--rojo)}
.instalar{background:#efe6f3;border-radius:14px;padding:12px 14px;font-size:14px;margin-bottom:16px;color:var(--profundo)}
.instalar b{display:block}

/* Fotos con metadatos (FotoMeta) */
.foto.procesando{display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--gris);animation:latido 1.2s infinite}
.foto.sin-vista{background:var(--crema) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23582a7c' stroke-width='2'%3E%3Cpath d='M4 8h3l2-3h6l2 3h3v11H4z'/%3E%3Ccircle cx='12' cy='13' r='3.5'/%3E%3C/svg%3E") center/32px no-repeat}
.foto.sin-vista img{opacity:0}
.foto .momento{position:absolute;left:4px;bottom:4px;background:rgba(31,27,36,.75);color:#fff;font-size:10.5px;font-weight:800;padding:2px 6px;border-radius:6px}
.galeria{display:flex;gap:10px;overflow-x:auto;margin:8px 0 12px;padding-bottom:4px;scroll-snap-type:x proximity}
figure.evid{margin:0;flex:none;width:170px;background:var(--crema);border-radius:12px;overflow:hidden;scroll-snap-align:start}
figure.evid .ver-foto{display:block;border:0;padding:0;width:100%;background:none}
figure.evid img{width:170px;height:130px;object-fit:cover;display:block}
figure.evid figcaption{padding:7px 8px 8px;display:flex;flex-wrap:wrap;gap:4px}
figure.evid figcaption small{width:100%;font-size:11.5px;color:var(--gris)}
figure.evid.anulada img{filter:grayscale(1);opacity:.45}
figure.evid .hueco{height:130px;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--gris)}
.rev .galeria img{height:130px}
.alerta{display:inline-block;font-size:11px;font-weight:700;line-height:1.25;padding:3px 7px;border-radius:7px;background:#fff6e3;color:#7a4b00}
.alerta.fuerte{background:#fdecea;color:var(--rojo)}
.alerta.ok{background:#e3f3e5;color:#1e6b25}
.herr{padding:0 8px 8px;width:100%}
.lnk{border:0;background:none;padding:4px 0;margin-right:12px;font-size:13px;font-weight:700;color:var(--morado)}
.lnk.rojo{color:var(--rojo)}
.herr .anular textarea{min-height:64px;font-size:14px;margin:6px 0}
.herr .meta{margin-top:4px}
.visor{position:fixed;inset:0;z-index:60;background:rgba(15,10,20,.92);display:flex;align-items:center;justify-content:center;padding:calc(20px + var(--seguro-arriba)) 12px calc(20px + var(--seguro-abajo))}
.visor img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}
.visor button{position:absolute;top:calc(14px + var(--seguro-arriba));right:14px;width:44px;height:44px;border-radius:50%;border:0;background:rgba(255,255,255,.16);color:#fff;font-size:24px}

/* Reportes ciudadanos */
.btn-reportes{background:#f6eef9!important;border-color:#e3d3ec!important}
.tabs{display:grid;grid-template-columns:1fr 1fr;background:#efe9f2;border-radius:14px;padding:4px;margin-bottom:12px}
.tabs button{border:0;background:none;border-radius:11px;padding:10px;font-weight:800;color:var(--profundo);min-height:44px}
.tabs button[aria-pressed="true"]{background:#fff;box-shadow:0 1px 3px rgba(61,27,88,.15)}
.filtros{margin-bottom:12px}
.filtros select,.filtros input{padding:11px 12px;font-size:15px}
.chips-scroll{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;margin-bottom:8px;-webkit-overflow-scrolling:touch}
.chips-scroll .chip{flex:none;padding:8px 13px;min-height:40px;font-size:14px}
.chip small{font-weight:800;opacity:.7;margin-left:2px}
.est-rep{display:inline-block;font-size:11.5px;font-weight:800;padding:2px 8px;border-radius:999px;margin-top:4px;color:#fff;text-transform:uppercase;letter-spacing:.03em}
.est-rep.dup{background:#fff1d6;color:#7a4b00;text-transform:none;letter-spacing:0}
.item.rep .mini svg{width:28px;height:28px}
.txt-alerta{color:var(--rojo)!important;display:inline!important;font-size:inherit!important}
.mapa-rep{height:62vh;min-height:320px;border-radius:16px;overflow:hidden;background:var(--crema)}
.pop-rep{font-family:'Red Hat Display',system-ui,sans-serif;font-size:14px;display:grid;gap:4px}
.pop-rep b{font-size:15px;color:var(--profundo)}
.pop-rep .btn{width:100%;margin-top:6px}
.cab-rep{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}
.cab-rep small{color:var(--gris);font-size:13px}
.tit-rep{font-size:20px;line-height:1.2;color:var(--profundo);margin:10px 0 6px}
.desc-rep{margin:0 0 10px;white-space:pre-wrap}
.aviso-dup{background:#fff6e3;border:1.5px solid #f4d9a2;border-radius:12px;padding:10px 12px;font-size:14px;margin:10px 0;display:grid;gap:6px}
.aviso-dup b{color:#7a4b00}
.aviso-dup a{color:var(--morado);font-weight:800}
dl.datos{display:grid;grid-template-columns:auto 1fr;gap:5px 12px;font-size:14px;margin:10px 0}
dl.datos dt{color:var(--gris)} dl.datos dd{margin:0;font-weight:600;min-width:0;overflow-wrap:anywhere}
dl.datos a{color:var(--morado)}
.meta-dl{font-size:12.5px;background:#fff;border-radius:10px;padding:8px}
.meta-dl code{font-size:10.5px;word-break:break-all}
.et-momento{font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--gris);margin-top:4px}
.casilla{display:flex;gap:10px;align-items:flex-start;font-size:15px;margin:0 0 14px}
.casilla input{width:22px;height:22px;flex:none;margin-top:1px;accent-color:var(--morado)}
.casilla small{display:block;color:var(--gris);font-size:13px}
.hist{border-left:3px solid var(--arena);padding:2px 0 10px 12px;margin-left:4px}
.hist p{margin:4px 0;font-size:15px}
.hist small{color:var(--gris);font-size:12.5px}
.pub{font-size:11px;font-weight:700;color:#1e6b25;background:#e3f3e5;padding:2px 7px;border-radius:7px}
@media (min-width:900px){main.ancho{max-width:900px}}
.lista{grid-template-columns:minmax(0,1fr)}
.item.rep b{white-space:normal;line-height:1.25}

/* Actividades por área (008) */
.tit-sec{font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--gris);margin:18px 0 10px}
.grupo-area{margin-bottom:12px}
.et-grupo{font-size:12px;font-weight:800;color:var(--magenta);margin:0 0 6px 2px}
.tarjeta-area{display:block;width:100%;text-align:left;border:0;border-radius:16px;padding:14px 16px;background:#fff;box-shadow:0 1px 0 var(--arena),0 2px 10px rgba(61,27,88,.06);margin-bottom:8px}
.tarjeta-area b{display:block;font-size:17px;color:var(--profundo)}
.tarjeta-area span{font-size:13px;color:var(--gris)}
.tarjeta-area i.insignia{font-style:normal}
.est-act{display:inline-block;font-size:11.5px;font-weight:800;padding:2px 8px;border-radius:999px;margin-top:4px;text-transform:uppercase;letter-spacing:.03em;background:#eee;color:var(--tinta)}
.est-act.enviada,.est-act.abierto{background:#fff1d6;color:#7a4b00}
.est-act.aprobada,.est-act.resuelto{background:#e3f3e5;color:#1e6b25}
.est-act.rechazada{background:#fdecea;color:var(--rojo)}
.est-act.en_atencion{background:#e0f5f8;color:#00616d}
.est-act.cancelado{background:#eee;color:var(--gris)}
.est-act.alerta-chip,.est-act.grav-alta{background:#fdecea;color:var(--rojo)}
.est-act.grav-media{background:#fff1d6;color:#7a4b00}
.est-act.grav-baja{background:#eef;color:#3a3a8a}
.mini.grav-alta{background:#fdecea!important;color:var(--rojo);font-weight:800;font-size:20px}
.mini.grav-media{background:#fff1d6!important;color:#7a4b00;font-weight:800;font-size:20px}
.mini.grav-baja{background:#eef!important;color:#3a3a8a;font-weight:800;font-size:20px}
.req{color:var(--magenta)!important;font-weight:700!important}
.con-boton{display:flex;gap:8px}
.con-boton input{flex:1;min-width:0}
.aviso-alerta .alerta{display:block;margin-top:6px}
.ayuda.ant:empty,.aviso-alerta:empty{display:none}
.item-lista{display:flex;align-items:center;gap:8px;background:var(--fondo);border:1.5px solid var(--arena);border-radius:12px;padding:8px 10px;margin-bottom:8px}
.item-lista.con-alerta{border-color:#f2c7c3;background:#fff6f5}
.item-lista span{flex:1;min-width:0}
.item-lista b{display:block;font-size:15px;color:var(--profundo)}
.item-lista small{display:block;font-size:12.5px;color:var(--gris)}
.item-lista button{border:0;background:none;color:var(--morado);font-weight:700;padding:6px}
.sub-forma{border:2px dashed var(--oro);border-radius:14px;padding:12px;margin:8px 0;background:#fffcf5}
.sitio-cab b{font-size:18px;color:var(--profundo)}
.sitio-cab .gps{margin-top:8px}
table.tabla-lista{width:100%;border-collapse:collapse;font-size:12.5px;font-weight:500}
table.tabla-lista th{text-align:left;color:var(--gris);font-weight:700;border-bottom:1px solid var(--arena);padding:3px 4px}
table.tabla-lista td{border-bottom:1px solid #f0ebe2;padding:3px 4px}
table.tabla-lista tr.con-alerta td{color:var(--rojo)}
dl.datos dd.txt-alerta{color:var(--rojo)!important}
.fila-area{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:1px solid #f0ebe2;font-size:14px}
.fila-area select{width:auto;padding:6px 10px;font-size:14px}
.visor.firma{background:rgba(15,10,20,.7)}
.visor.firma .hoja{background:#fff;border-radius:16px;padding:14px;width:100%;max-width:560px;display:grid;gap:10px}
.visor.firma canvas{width:100%;height:auto;border:1.5px solid var(--arena);border-radius:10px;touch-action:none;background:#fff}
.visor video{max-width:100%;max-height:100%}
.minuta{background:#fff;border-radius:12px;padding:22px;font-size:14px}
.minuta header{display:flex;gap:14px;align-items:center;border-bottom:3px solid var(--morado);padding-bottom:10px;margin-bottom:14px}
.minuta header img{height:46px}
.minuta header b{display:block;color:var(--profundo)}
.minuta header span{color:var(--gris);font-size:13px}
.minuta h1{font-size:20px;color:var(--profundo);margin:0 0 8px}
.sec-minuta{break-inside:avoid;margin-top:12px}
.sec-minuta h3{font-size:14px;color:var(--magenta);margin:0 0 4px;border-bottom:1px solid var(--arena)}
.fotos-minuta{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.fotos-minuta img{width:100%;height:150px;object-fit:cover;border-radius:6px}
.minuta footer{margin-top:16px;font-size:11px;color:var(--gris);border-top:1px solid var(--arena);padding-top:8px}
@media print{.barra,.no-imprimir,#aviso{display:none!important}body,main{background:#fff!important;padding:0!important;max-width:none}.minuta{border-radius:0;padding:0}}
dl.datos dt.ancho,dl.datos dd.ancho{grid-column:1/-1}
dl.datos dd.ancho{margin-bottom:6px}

/* Etiquetas de Patrimonio */
.bien-info:empty{display:none}
.bien{margin-top:6px;padding:8px 10px;border-radius:10px;background:#f3f0f6;font-size:13px;line-height:1.35;color:var(--texto,#2b2233)}
.bien small{display:block;color:var(--gris);margin-top:2px}
.bien.ok{background:#e7f3dd;border-left:4px solid #3f7f17}
.bien.mal{background:#fdecec;border-left:4px solid var(--rojo,#b3261e)}
.tabla-lista.bienes td small{color:var(--gris)}
.visor-txt{position:absolute;left:0;right:0;bottom:28px;text-align:center;color:#fff;font-weight:700;text-shadow:0 1px 3px #000;margin:0}

/* Tablero por área e informe mensual */
.kpis{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:6px}
@media (min-width:620px){.kpis{grid-template-columns:repeat(4,1fr)}}
.kpi{background:#fff;border-radius:14px;padding:12px 14px;box-shadow:0 1px 3px rgba(61,27,88,.08)}
.kpi b{display:block;font-size:26px;font-weight:800;color:var(--profundo);line-height:1.1}
.kpi span{font-size:13px;color:var(--gris)}
.kpi.mal b{color:var(--rojo)}
.kpi.aviso b{color:var(--magenta)}
.barras{display:flex;gap:6px;align-items:flex-end;height:150px;padding-top:6px}
.barras .col{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;min-width:0}
.barras .pila{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center;gap:2px;border-bottom:1px solid var(--arena)}
.barras .pila i{display:block;width:30%;max-width:14px;border-radius:3px 3px 0 0}
.barras small{font-size:11px;color:var(--gris);margin-top:3px;text-transform:uppercase}
.barras em{font-style:normal;font-size:12px;font-weight:700;color:var(--profundo)}
.b-vis{background:var(--morado)}.b-nue{background:var(--magenta)}.b-res{background:var(--verde)}
.ley{display:flex;gap:14px;flex-wrap:wrap;font-size:12px;color:var(--gris);margin-top:8px}
.ley i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:5px;vertical-align:-1px}
.dos-col{display:grid;gap:12px;margin-top:12px}
@media (min-width:620px){.dos-col{grid-template-columns:1fr 1fr}}
.dos-col .tarjeta h3,.tarjeta>h3{margin-top:0}
.informe .kpis{margin:10px 0}
.informe .kpi{box-shadow:none;border:1px solid var(--arena)}
.informe h1 small{font-size:13px;color:var(--gris);font-weight:600}
.informe-tabla td,.informe-tabla th{text-align:center;font-size:13px}
.informe-tabla td:first-child,.informe-tabla th:first-child{text-align:left}
.informe ul{margin:2px 0 6px;padding-left:20px;font-size:13px}
#mes{padding:10px 12px;border-radius:12px;border:1px solid var(--arena);background:#fff}
@media print{.informe .kpis{grid-template-columns:repeat(4,1fr)}.informe-tabla{font-size:11px}}
.tabla-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}
.barra-informe{display:flex;gap:10px}.barra-informe select{flex:1;min-width:0}.barra-informe .btn{flex:0 0 auto;width:auto;white-space:nowrap;padding-left:16px;padding-right:16px}
@media print{.tabla-scroll{overflow:visible}}

/* ================= Panel de administración ================= */
.aviso-caja{background:#fff6e0;border:1px solid #ecd9a5;border-radius:14px;padding:12px 14px;margin-bottom:14px;font-size:15px}
.btn-admin{background:linear-gradient(135deg,var(--profundo),var(--morado))!important;color:#fff!important;border:0!important}
.btn-admin b{color:#fff!important}.btn-admin span{color:rgba(255,255,255,.82)!important}
.adm{display:grid;grid-template-columns:232px minmax(0,1fr);gap:0;max-width:1400px;margin:0 auto;min-height:calc(100vh - 58px)}
.adm-nav{background:#fff;border-right:1px solid var(--arena);padding:18px 10px;position:sticky;top:58px;height:calc(100vh - 58px);overflow-y:auto;display:flex;flex-direction:column;gap:2px}
.adm-nav a{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:10px;color:var(--tinta);text-decoration:none;font-weight:600;font-size:15px}
.adm-nav a svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto;opacity:.75}
.adm-nav a:hover{background:var(--crema)}
.adm-nav a[aria-current]{background:#efe6f3;color:var(--profundo)}
.adm-nav a[aria-current] svg{opacity:1;color:var(--morado)}
.adm-nav-pie{margin-top:auto;padding:14px 12px 4px;font-size:12px;color:var(--gris);border-top:1px solid var(--arena);word-break:break-all}
.adm-cuerpo{padding:24px 28px 48px;min-width:0}
.adm-cab{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px;flex-wrap:wrap}
.adm-cab h1{font-size:26px;margin:0;color:var(--profundo);font-weight:800;letter-spacing:-.01em}
.adm-acc{display:flex;gap:8px;flex-wrap:wrap}
.adm-acc .btn,.adm-acc a.btn{width:auto;text-decoration:none;display:inline-flex;align-items:center}
.adm-sub{font-size:13px;text-transform:uppercase;letter-spacing:.08em;color:var(--gris);margin:22px 0 10px;font-weight:700}
.adm-kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:12px}
.adm-kpi{background:#fff;border:1px solid var(--arena);border-radius:14px;padding:14px 16px;text-decoration:none;color:inherit;display:block;position:relative;overflow:hidden;transition:box-shadow .15s,transform .15s}
.adm-kpi[href]:hover{box-shadow:0 6px 18px rgba(61,27,88,.10);transform:translateY(-1px)}
.adm-kpi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--morado)}
.adm-kpi b{display:block;font-size:30px;line-height:1.1;font-weight:800;color:var(--profundo)}
.adm-kpi span{display:block;font-size:14px;color:var(--tinta);margin-top:2px}
.adm-kpi small{display:block;font-size:12px;color:var(--gris);margin-top:4px}
.adm-kpi.mal::before{background:var(--rojo)}.adm-kpi.mal b{color:var(--rojo)}
.adm-kpi.aviso::before{background:#d39b1a}.adm-kpi.aviso b{color:#9a6b00}
.adm-tabla-env{background:#fff;border:1px solid var(--arena);border-radius:14px;overflow:auto}
.adm-tabla{width:100%;border-collapse:collapse;font-size:14px}
.adm-tabla th{background:var(--crema);text-align:left;font-size:12px;font-weight:700;color:var(--gris);text-transform:uppercase;letter-spacing:.05em;padding:10px 12px;white-space:nowrap;border-bottom:1px solid var(--arena);position:sticky;top:0}
.adm-tabla tbody th{position:static;text-transform:none;letter-spacing:0;font-size:13px;width:220px;background:#fbf9f5}
.adm-tabla td{padding:10px 12px;border-bottom:1px solid #f0ebe2;vertical-align:top}
.adm-tabla tr:last-child td{border-bottom:0}
.adm-tabla small{color:var(--gris)}
.adm-tabla.mini td,.adm-tabla.mini th{padding:7px 9px;font-size:13px}
.adm-clic tbody tr{cursor:pointer}.adm-clic tbody tr:hover td{background:#faf6fc}
.adm-clic tbody tr:focus{outline:2px solid var(--morado);outline-offset:-2px}
.adm-chip{display:inline-block;font-size:12px;font-weight:700;padding:3px 9px;border-radius:999px;background:#eee8f2;color:var(--profundo);white-space:nowrap;margin:1px 0}
.adm-chip.ok{background:#e4f3da;color:#2d6a0f}.adm-chip.mal{background:#fde5e3;color:#a1251c}.adm-chip.aviso{background:#fff1cf;color:#8a5f00}
.adm-chip.gris{background:#efedf0;color:#5d5864}.adm-chip.morado{background:var(--morado);color:#fff}.adm-chip.area{background:#e7f6f8;color:#00626e;font-weight:600}
.adm-filtros{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px;align-items:center}
.adm-filtros input[type=search]{flex:1 1 260px;min-width:0}
.adm-filtros select,.adm-filtros input{padding:10px 12px;border:1px solid var(--arena);border-radius:10px;background:#fff;font-size:15px}
.adm-vacio{padding:28px;text-align:center;color:var(--gris);background:#fff;border:1px dashed var(--arena);border-radius:14px}
.adm-nota{font-size:13px;color:var(--gris);margin:10px 2px}
.adm-dos{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:18px;align-items:start}
.adm-tarjeta{background:#fff;border:1px solid var(--arena);border-radius:16px;padding:18px 20px;margin-bottom:16px}
.adm-tarjeta h2{font-size:17px;margin:0 0 12px;color:var(--profundo)}
.adm-tarjeta h2 small{font-weight:500;color:var(--gris);font-size:13px}
.adm-campos{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 14px}
.adm-check{display:flex;align-items:center;gap:8px;font-size:15px;margin:8px 0;cursor:pointer}
.adm-check input{width:18px;height:18px;accent-color:var(--morado)}
.adm-check small{color:var(--gris)}
.adm-checks{display:flex;flex-wrap:wrap;gap:6px 18px;margin:6px 0 12px}
.adm-checks label{display:flex;gap:6px;align-items:center;font-size:14px}
.adm-areas{display:grid;gap:8px}
.adm-areas label{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;border:1px solid #f0ebe2;border-radius:10px}
.adm-areas label span small{display:block;color:var(--gris);font-size:12px}
.adm-areas select{width:auto;min-width:130px;padding:8px 10px;border-radius:10px;border:1px solid var(--arena)}
.adm-fila{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:12px}
.adm-fila .btn{width:auto}
.adm-fila input{padding:10px 12px;border:1px solid var(--arena);border-radius:10px}
.adm-fila-entre{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.adm-botones{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.adm-botones .btn{width:auto}
.adm-dl{display:grid;grid-template-columns:auto 1fr;gap:4px 14px;font-size:14px;margin:8px 0}
.adm-dl dt{color:var(--gris)}.adm-dl dd{margin:0}
.adm-tabs{display:inline-flex;background:var(--crema);border-radius:10px;padding:3px}
.adm-tabs button{border:0;background:none;padding:7px 12px;border-radius:8px;font-weight:700;font-size:13px;color:var(--gris)}
.adm-tabs button[aria-pressed=true]{background:#fff;color:var(--profundo);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.adm-seccion{border:1px solid var(--arena);border-radius:12px;padding:12px;margin-top:12px;background:#fdfcfa}
.adm-sec-tit{font-weight:800;font-size:16px;border:1px solid transparent;background:transparent;padding:6px 8px;border-radius:8px;flex:1;min-width:0;color:var(--profundo)}
.adm-sec-tit:hover,.adm-sec-tit:focus{border-color:var(--arena);background:#fff}
.adm-campos-lista{list-style:none;margin:8px 0;padding:0}
.adm-campos-lista li{display:flex;align-items:center;gap:10px;padding:8px 10px;background:#fff;border:1px solid #f0ebe2;border-radius:10px;margin-bottom:6px}
.adm-tipo{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--morado);background:#efe6f3;border-radius:6px;padding:3px 6px;min-width:92px;text-align:center}
.adm-c-et{flex:1;min-width:0;font-size:14px}
.adm-c-et code,.adm-tarjeta code,.adm-tabla code{font-size:12px;color:var(--gris);background:#f4f1ec;padding:1px 5px;border-radius:5px}
.adm-mini-btns{display:flex;gap:4px;flex:0 0 auto}
.adm-mini-btns button{border:1px solid var(--arena);background:#fff;border-radius:8px;padding:4px 9px;font-size:13px;font-weight:600}
.adm-mini-btns button:hover{background:var(--crema)}
.adm-json{width:100%;min-height:420px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.4;border:1px solid var(--arena);border-radius:10px;padding:12px}
.adm-det{border:1px solid #f0ebe2;border-radius:10px;padding:8px 12px;margin:10px 0}
.adm-det summary{font-weight:700;cursor:pointer;color:var(--profundo)}
.adm-aud{background:#fff;border:1px solid var(--arena);border-radius:12px;padding:10px 14px;margin-bottom:8px}
.adm-quien{color:var(--gris);display:block;margin-top:2px}
.adm-cambios{margin:6px 0 0;padding-left:18px;font-size:13px}
.adm-det-txt{margin:6px 0 0;font-size:13px}
.adm-rojo{color:var(--rojo);font-weight:700}
.adm-clave{display:flex;gap:10px;align-items:center;background:var(--crema);border-radius:12px;padding:14px;margin:12px 0}
.adm-clave code{font-size:24px;font-weight:800;letter-spacing:.06em;color:var(--profundo);flex:1;font-family:ui-monospace,Menlo,monospace}
.adm-clave .btn{width:auto}
.adm-modal{position:fixed;inset:0;z-index:80;background:rgba(20,12,28,.55);display:flex;align-items:center;justify-content:center;padding:16px}
.adm-modal-caja{background:#fff;border-radius:18px;width:min(640px,100%);max-height:calc(100vh - 32px);display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.25)}
.adm-modal-cab{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f0ebe2}
.adm-modal-cab h2{margin:0;font-size:19px;color:var(--profundo)}
.adm-x{border:0;background:var(--crema);width:34px;height:34px;border-radius:10px;font-size:20px}
.adm-modal-cuerpo{padding:16px 20px;overflow-y:auto}
.adm-modal-cuerpo textarea{width:100%;min-height:90px}
.adm-modal-pie{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px;border-top:1px solid #f0ebe2}
.adm-modal-pie .btn{width:auto}
@media (max-width:900px){
  .adm{grid-template-columns:1fr}
  .adm-nav{position:sticky;top:58px;height:auto;flex-direction:row;overflow-x:auto;padding:8px;border-right:0;border-bottom:1px solid var(--arena);z-index:5;gap:4px}
  .adm-nav a{white-space:nowrap;padding:8px 10px;font-size:14px}
  .adm-nav-pie{display:none}
  .adm-cuerpo{padding:16px 14px 40px}
  .adm-dos{grid-template-columns:1fr}
  .adm-cab h1{font-size:22px}
  .adm-campos-lista li{flex-wrap:wrap}
}
.adm input:not([type=checkbox]):not([type=radio]),.adm select,.adm textarea,.adm-modal input:not([type=checkbox]):not([type=radio]),.adm-modal select,.adm-modal textarea{width:100%;padding:11px 13px;border:1px solid var(--arena);border-radius:12px;background:#fff;font-size:16px;color:var(--tinta)}
.adm input:focus,.adm select:focus,.adm textarea:focus,.adm-modal input:focus,.adm-modal select:focus,.adm-modal textarea:focus{outline:2px solid #cbb3dc;border-color:var(--morado)}
.adm input[readonly],.adm-modal input[readonly]{background:var(--crema);color:var(--gris)}
.adm .adm-filtros input[type=search]{width:auto}.adm .adm-filtros select,.adm .adm-filtros input[type=date]{width:auto}
.adm .adm-areas select{width:auto}.adm .adm-sec-tit{width:auto;border-color:transparent;background:transparent}
.adm .adm-fila input{width:auto}

/* =====================================================================
   Identidad institucional (Manual de Marca del Gobierno de Tlaxcala)
   Red Hat Display para títulos y controles, Roboto para texto.
   Lo memorable: la franja de los cuatro brotes bajo la barra y la flor.
   ===================================================================== */
:root{--naranja:#ff8300;--rojo-brote:#ab162b;--verde-brote:#77bc1f;--cian-osc:#0a9bb0;--brotes:linear-gradient(90deg,var(--naranja) 0 25%,var(--rojo-brote) 25% 50%,var(--cian) 50% 75%,var(--verde-brote) 75% 100%)}
html,body{font-family:Roboto,system-ui,-apple-system,'Segoe UI',sans-serif;font-size:16.5px}
h1,h2,h3,b,strong,label.et,.btn,.barra,.tit-sec,.saludo b,.tarjeta-accion b,.secundarias b,.chip,.adm-cab h1,.adm-nav a,.adm-kpi b,.kpi b,.insignia{font-family:'Red Hat Display',system-ui,sans-serif}
a{color:var(--cian-osc)}
:focus-visible{outline:3px solid var(--cian);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important;scroll-behavior:auto!important}}

/* Barra: morado profundo, filete arena y franja de brotes */
.barra{border-bottom:3px solid var(--oro);box-shadow:0 4px 0 -1px transparent}
.barra::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:4px;background:var(--brotes);pointer-events:none}
.barra h1{font-size:18px;letter-spacing:-.005em}
.barra h1 small{display:block;font-family:Roboto,sans-serif;font-weight:400;font-size:12px;opacity:.78;letter-spacing:.01em}
.barra .marca{width:34px;height:34px;flex:none}
.barra-inicio{min-height:64px}
.barra+main,.barra+.adm{margin-top:4px}
.adm-nav{top:65px}

/* Títulos de sección: tipo de oración y filete de brotes, sin mayúsculas sostenidas */
.tit-sec{font-size:17px;font-weight:800;text-transform:none;letter-spacing:-.005em;color:var(--profundo);margin:24px 0 12px;padding-bottom:7px;position:relative}
.tit-sec::after{content:"";position:absolute;left:0;bottom:0;width:44px;height:3px;border-radius:2px;background:var(--brotes)}
.et-grupo{font-size:13px;font-weight:700;color:var(--magenta);text-transform:none;letter-spacing:0}

/* Inicio */
.saludo{margin:8px 0 18px}
.saludo-fecha{display:block;font-size:13px;color:var(--gris);margin-bottom:2px}
.saludo b{font-size:28px;letter-spacing:-.01em}
.inicio .grande{margin-bottom:6px}
.cuenta{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:22px;padding:14px 16px;background:#fff;border-radius:16px;box-shadow:0 1px 0 var(--arena)}
.cuenta b{display:block;color:var(--profundo);font-size:15px}
.cuenta span{font-size:13px;color:var(--gris)}
.cuenta .pie-acc button{border:0;background:none;color:var(--morado);font-weight:700;padding:6px 0;font-family:'Red Hat Display',sans-serif}
.pie-acc{display:flex;gap:16px;flex-wrap:wrap}
.secundarias button{transition:border-color .15s}
.secundarias button:hover,.tarjeta-accion:hover{border-color:var(--morado)}
.tarjeta-accion{border:1.5px solid transparent}

/* Pie institucional */
.pie-app{margin:34px 0 0;padding-top:16px;border-top:1px solid var(--arena);font-size:12.5px;color:var(--gris);line-height:1.5}
.pie-app p{margin:0 0 4px}
.pie-app a{color:var(--gris);text-decoration:underline}

/* Inicio de sesión: marca a la izquierda (escritorio) o arriba (teléfono) */
.login{min-height:100vh;display:grid;grid-template-columns:1fr;padding:0;max-width:none;margin:0}
.login-marca{background:linear-gradient(rgba(61,27,88,.88),rgba(61,27,88,.88)),url(/assets/textura-tlaxcala.png) center/300px repeat,var(--profundo);color:#fff;padding:calc(28px + var(--seguro-arriba)) 24px 26px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;border-bottom:3px solid var(--oro)}
.login-marca::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:4px;background:var(--brotes)}
.login-flor{position:absolute;right:-70px;top:-60px;width:260px;opacity:.12;pointer-events:none}
.login-marca-txt{position:relative;max-width:420px}
.login .login-sistema{margin:0 0 6px;font-size:14px;color:var(--oro);font-weight:500;opacity:1}
.login-marca h1{font-size:34px;line-height:1.05;margin:0 0 10px;font-weight:800;letter-spacing:-.015em}
.login .login-marca p{margin:0;color:#fff;opacity:.9;font-size:15.5px;line-height:1.5}
.login .login-marca .login-gob{position:relative;margin:18px 0 0;font-size:13px;opacity:.75}
.login-forma{padding:30px 22px calc(26px + var(--seguro-abajo));display:flex;flex-direction:column;align-items:center}
.login-caja{width:100%;max-width:400px}
.login-logo{height:62px;display:block;margin:0 0 22px}
.login h2{font-size:24px;line-height:1.15;font-weight:800;color:var(--profundo);margin:0 0 6px}
.login .login-caja>p{color:var(--gris);margin:0 0 20px}
.login .pie-app{width:100%;max-width:400px;margin-top:auto;padding-top:22px}
@media (min-width:900px){
  .login{grid-template-columns:minmax(380px,44%) 1fr}
  .login-marca{border-bottom:0;border-right:3px solid var(--oro);padding:56px 52px}
  .login-marca::after{left:auto;top:0;bottom:0;right:-7px;width:4px;height:auto;background:linear-gradient(180deg,var(--naranja) 0 25%,var(--rojo-brote) 25% 50%,var(--cian) 50% 75%,var(--verde-brote) 75% 100%)}
  .login-flor{width:520px;right:-150px;top:auto;bottom:-120px;opacity:.1}
  .login-marca h1{font-size:52px}
  .login .login-marca p{font-size:17px}
  .login-forma{justify-content:center;padding:48px}
}

/* Escritorio: más ancho útil y dos columnas en el inicio */
@media (min-width:900px){
  main{max-width:760px;padding-top:24px}
  main.inicio{max-width:1120px}
  .inicio-cols{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:28px;align-items:start}
  .inicio-sec{position:sticky;top:90px}
  .inicio-pri .tit-sec:first-child,.inicio-sec .tit-sec:first-child,#mis-areas .tit-sec:first-child{margin-top:4px}
  .barra{padding-left:max(16px,calc((100vw - 1120px) / 2));padding-right:max(16px,calc((100vw - 1120px) / 2))}
}

/* SIA 013/014 · catálogos, tipos de campo nuevos, laboratorio y consulta */
.adm-pestanas{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}
.adm-pestanas a[aria-current="page"]{background:var(--morado);color:#fff;border-color:var(--morado)}
.adm-tabla tr.gris td{color:var(--gris);text-decoration:line-through}
.calc{display:flex;align-items:baseline;gap:8px;padding:10px 12px;border-radius:12px;background:#f6f1f8;border:1px dashed #cdb9d8;font-weight:800;color:var(--profundo);min-height:44px}
.calc small{font-weight:600;color:var(--gris)}
.punto-gps{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.punto-gps span{font-size:14px;color:var(--profundo)}
.linea-fmt{font-family:'Red Hat Display',system-ui,sans-serif;font-size:12px;font-weight:800;letter-spacing:.02em;color:var(--magenta);margin:12px 2px 6px}
.muestra-info{margin-top:6px}
.muestra-info .bien{display:block}
.tarjeta-abierto{border:2px solid var(--rojo);background:#fff6f6}
.ficha-datos dt{font-weight:700}
.verif{border-left:4px solid var(--verde)}
/* Inventario (015–017) */
.item .cant{flex:none;font-size:15px;color:var(--profundo);white-space:nowrap;display:inline}
.item .cant.neg{color:var(--rojo)}
.item.anulada{opacity:.6}
.item .lnk{margin-top:4px}
.tabla-lista tr.anulada td{text-decoration:line-through;color:var(--gris)}
.vale .cab-rep{justify-content:space-between}
.firma-vale{display:flex;gap:14px;align-items:center;margin-top:14px;padding-top:12px;border-top:1px dashed var(--arena)}
.firma-vale img{max-width:220px;max-height:100px;border:1px solid var(--arena);border-radius:8px;background:#fff}
.firma-vale small{display:block;color:var(--gris);font-size:12.5px}
.firma-vale .huella{word-break:break-all;font-family:ui-monospace,monospace;font-size:11px}
.btn svg{width:20px;height:20px;vertical-align:-4px;margin-right:6px}
.con-boton .btn svg{margin-right:0}
@media print{.vale{box-shadow:none}.barra,.no-imprimir{display:none!important}}
a.item{text-decoration:none;color:inherit}
a.item:active{background:var(--crema)}
.adm-caja{background:#fff;border:1px solid #e6dfd2;border-radius:14px;padding:12px 14px;margin-bottom:14px}.adm-caja p{margin:0 0 10px}
.adm-filtro{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:700;color:var(--gris)}.adm-filtro select,.adm-filtro input{font-weight:400;color:var(--tinta)}

/* Gestión (020) */
.adm-tabs a{padding:7px 12px;border-radius:8px;font-weight:700;font-size:13px;color:var(--gris);text-decoration:none}
.adm-tabs a[aria-current]{background:#fff;color:var(--profundo);box-shadow:0 1px 2px rgba(0,0,0,.08)}
#g-adm{margin-top:14px}

.dos>*{min-width:0}

/* Etapa 0 · navegación (nov-2026): insignias legibles, formularios para teléfono, tablas con indicio de desplazamiento, toques de 44 px */
.secundarias .insignia,.secundarias span.insignia{color:#fff;font-size:12px;white-space:nowrap}
select:not([multiple]),.adm select:not([multiple]),.adm-modal select:not([multiple]),.adm-filtros select:not([multiple]),.adm-areas select:not([multiple]),.fila-area select:not([multiple]){
  -webkit-appearance:none!important;appearance:none!important;padding-right:38px!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23582a7c' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:right 12px center!important;background-size:16px 16px!important;text-overflow:ellipsis}
input[type=search],input[type=date],input[type=time],input[type=month],input[type=datetime-local]{width:100%;min-height:50px;padding:12px 14px;border:1.5px solid var(--arena);border-radius:14px;background-color:#fff;font-size:17px;outline:none;color:var(--tinta)}
input[type=search]{-webkit-appearance:none;appearance:none}
input[type=search]:focus,input[type=date]:focus,input[type=time]:focus,input[type=month]:focus,input[type=datetime-local]:focus{border-color:var(--morado);box-shadow:0 0 0 3px rgba(88,42,124,.15)}
.filtros input[type=search],.filtros input[type=date]{min-height:44px;padding:10px 12px;font-size:15px}
input[type=file]{display:block;width:100%;max-width:100%;min-height:50px;padding:8px;border:1.5px dashed var(--arena);border-radius:14px;background:#fff;font-size:15px;color:var(--gris)}
input[type=file]::file-selector-button{font:inherit;font-weight:700;border:0;border-radius:10px;background:#f3ecf7;color:var(--morado);padding:10px 14px;margin-right:10px;min-height:40px}
.fila-filtros{display:flex;flex-wrap:wrap;gap:8px}
.fila-filtros>*{flex:1 1 150px;min-width:0}
.fila-filtros>select:first-child{flex:0 0 108px}
.fila-filtros select{padding-top:11px;padding-bottom:11px;font-size:15px}
@media (max-width:480px){.dos{grid-template-columns:1fr}.dos.firmas{grid-template-columns:1fr 1fr}}
.tabla-scroll,.adm-tabla-env{
  background:linear-gradient(to right,#fff 30%,rgba(255,255,255,0)) left center/36px 100% no-repeat local,
    linear-gradient(to left,#fff 30%,rgba(255,255,255,0)) right center/36px 100% no-repeat local,
    radial-gradient(farthest-side at 0 50%,rgba(61,27,88,.2),rgba(61,27,88,0)) left center/14px 100% no-repeat scroll,
    radial-gradient(farthest-side at 100% 50%,rgba(61,27,88,.2),rgba(61,27,88,0)) right center/14px 100% no-repeat scroll;background-color:#fff}
.informe-tabla td.txt,.informe-tabla th.txt{text-align:left;min-width:170px}
.informe-tabla td{white-space:normal}
.lnk{min-height:44px;display:inline-flex;align-items:center}
.pie-inicio button{min-height:44px;padding:10px 0}
.pie-app a{display:inline-block;padding:12px 2px;min-height:44px}
@media print{.tabla-scroll,.adm-tabla-env{background:none}}
.mini.grav-txt{font-size:12.5px!important;font-weight:800;letter-spacing:0}

/* Etapa 1 · navegación (nov-2026): barra fija, «Lo que me toca», botones del perfil y búsqueda */
#nav-fija{position:fixed;left:0;right:0;bottom:0;z-index:30;background:#fff;border-top:1px solid var(--arena);display:flex;gap:2px;padding:4px 4px calc(4px + var(--seguro-abajo));box-shadow:0 -2px 14px rgba(61,27,88,.08)}
#nav-fija .nav-marca{display:none}
#nav-fija a{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:54px;color:var(--gris);text-decoration:none;font:700 11.5px/1.15 'Red Hat Display',system-ui,sans-serif;border-radius:12px;position:relative;text-align:center}
#nav-fija a .et{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
#nav-fija .largo{display:none}
#nav-fija a[aria-current=page]{color:var(--morado);background:#f3ecf7}
#nav-fija a:focus-visible{outline:2px solid var(--morado);outline-offset:-2px}
#nav-fija .n{position:absolute;top:3px;left:calc(50% + 5px);background:var(--magenta);color:#fff;border-radius:999px;font:800 11px/18px 'Red Hat Display',sans-serif;font-style:normal;padding:0 6px;min-width:18px;text-align:center}
body.con-nav{padding-bottom:calc(66px + var(--seguro-abajo))}
body.con-nav #aviso{bottom:calc(82px + var(--seguro-abajo))}
@media (min-width:1000px){
  #nav-fija{top:0;right:auto;width:212px;flex-direction:column;justify-content:flex-start;border-top:0;border-right:1px solid var(--arena);padding:0 10px 12px;box-shadow:none;gap:4px}
  #nav-fija .nav-marca{display:flex;align-items:center;gap:10px;margin:0 -10px 10px;padding:12px 16px;min-height:58px;background:var(--profundo);color:#fff;font:800 16px 'Red Hat Display',sans-serif}
  #nav-fija .nav-marca img{height:28px}
  #nav-fija a{flex:none;flex-direction:row;justify-content:flex-start;gap:12px;padding:10px 14px;font-size:15px;min-height:46px;text-align:left}
  #nav-fija .n{position:static;margin-left:auto}
  #nav-fija .largo{display:inline}#nav-fija .corto{display:none}
  body.con-nav{padding-bottom:0;padding-left:212px}
  body.con-nav #aviso{bottom:calc(18px + var(--seguro-abajo))}
  body.con-nav .barra .marca{display:none}
}
@media print{#nav-fija{display:none!important}body.con-nav{padding:0!important}}
.toca-bloque{background:#fff;border-radius:18px;padding:14px 14px 10px;box-shadow:0 1px 0 var(--arena),0 2px 10px rgba(61,27,88,.06);margin-bottom:14px}
.toca-cab{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:8px}
.toca-cab h2{margin:0;font-size:19px;font-weight:800;color:var(--profundo)}
.toca-cuenta{font-size:14px;color:var(--gris);white-space:nowrap}.toca-cuenta b{color:var(--rojo)}
.toca-lista{display:grid;gap:8px;grid-template-columns:minmax(0,1fr)}
.toca-lista>*,.toca-bloque{min-width:0}
.toca-txt b{overflow-wrap:anywhere}
.toca-item{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1.5px solid var(--arena);border-left-width:5px;border-radius:14px;background:#fff;color:var(--tinta);text-decoration:none;min-height:56px}
.toca-item:hover{border-color:var(--morado)}
.toca-item:focus-visible{outline:2px solid var(--morado);outline-offset:2px}
.toca-item.g-vencido{border-left-color:var(--rojo)}.toca-item.g-hoy{border-left-color:#e8a33d}.toca-item.g-semana{border-left-color:var(--cian)}
.toca-ico{flex:none;width:36px;height:36px;border-radius:11px;background:#f3ecf7;color:var(--morado);display:flex;align-items:center;justify-content:center}
.toca-item.g-vencido .toca-ico{background:#fdecea;color:var(--rojo)}
.toca-txt{flex:1;min-width:0;display:flex;flex-direction:column}
.toca-txt b{font-size:15px;color:var(--profundo);line-height:1.25}
.toca-txt span{font-size:14.5px;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.toca-txt small{font-size:12.5px;color:var(--gris);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.toca-folio{font-weight:700;color:var(--gris)}
.toca-fecha{flex:none;font-size:12.5px;font-weight:800;color:var(--gris);text-align:right;max-width:84px}
.toca-item.g-vencido .toca-fecha{color:var(--rojo)}.toca-item.g-hoy .toca-fecha{color:#8a5a00}
.toca-item.urgente .toca-txt b::after{content:"Urgente";margin-left:8px;font-size:11px;font-weight:800;color:#fff;background:var(--rojo);border-radius:999px;padding:1px 7px;vertical-align:1px}
.toca-vacio{display:flex;align-items:center;gap:12px;padding:12px;border-radius:14px;background:var(--crema);color:var(--gris);font-size:15px}
.toca-vacio.ok{background:#eef6ea;color:#2e5e17}.toca-vacio.ok b{display:block;color:#2e5e17;font-size:16px}
.toca-todo{margin-top:10px}
.atajos{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:6px}
@media (min-width:640px){.atajos{grid-template-columns:repeat(3,1fr)}}
.atajo{display:flex;flex-direction:column;gap:2px;padding:12px;border:1.5px solid var(--arena);border-radius:16px;background:#fff;text-decoration:none;color:var(--tinta);min-height:92px}
.atajo:hover{border-color:var(--morado)}
.atajo-ico{width:38px;height:38px;border-radius:12px;background:#f3ecf7;color:var(--morado);display:flex;align-items:center;justify-content:center;margin-bottom:4px}
.atajo b{font-size:15.5px;color:var(--profundo);line-height:1.2}.atajo span{font-size:12.5px;color:var(--gris);line-height:1.3}
.tit-sec small{font-weight:700;color:var(--gris);font-size:13px}
.buscar-fila{display:flex;gap:8px;align-items:stretch}.buscar-fila input{flex:1;min-width:0}
.buscar-fila .btn{flex:none;min-height:50px}
/* Encuesta SUS y uso (032) */
.uso-barras{display:flex;align-items:flex-end;gap:2px;height:90px;background:#fff;border-radius:12px;padding:10px}.uso-barras span{flex:1;background:var(--morado);border-radius:2px 2px 0 0;min-width:2px}
.sus-escala{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}.sus-escala .chip{padding:10px 0;text-align:center}
.sus-ext{display:flex;justify-content:space-between;color:var(--gris);margin-top:4px}

/* Etapa 2 · fichas conectadas (nov-2026): siguiente paso, relacionados, avisos de origen */
.conexiones{margin-top:8px}
.atajos-paso .atajo{text-align:left;cursor:pointer;font:inherit;min-height:76px}
.atajo-alerta{border-color:#f2c7c3;background:#fff8f7}.atajo-alerta b{color:var(--rojo)}
.rel-item{padding:0;gap:0}
.rel-item .rel-abrir{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:10px 12px;color:inherit;text-decoration:none}
.rel-item .lnk{flex:none;padding:0 12px}
.toca-item .btn.chico{flex:none;width:auto}
.visor.hoja-conexion{align-items:flex-end;padding:0}
.visor.hoja-conexion .hoja{background:#fff;color:var(--tinta);width:100%;max-width:600px;max-height:88vh;overflow:auto;border-radius:18px 18px 0 0;padding:16px 16px calc(16px + var(--seguro-abajo));display:grid;gap:12px}
@media (min-width:700px){.visor.hoja-conexion{align-items:center;padding:20px}.visor.hoja-conexion .hoja{border-radius:18px}}
.hoja-cab{display:flex;align-items:center;justify-content:space-between;gap:10px}.hoja-cab b{font-size:18px;color:var(--profundo)}
.hoja-conexion button.toca-item{width:100%;text-align:left;font:inherit;cursor:pointer}
.aviso-origen{display:flex;align-items:center;justify-content:space-between;gap:10px;background:#eef6fb;border:1.5px solid #bfe3ee;border-radius:14px;padding:10px 14px;margin-bottom:14px;font-size:14.5px}
.aviso-origen b{display:block;color:var(--profundo)}
.tarjeta.bpa{margin:0}
.visor.hoja-conexion button{position:static;width:auto;height:auto;top:auto;right:auto;border-radius:14px;font-size:inherit}
.visor.hoja-conexion button.toca-item{width:100%;background:#fff;color:var(--tinta);border:1.5px solid var(--arena);border-left-width:5px}
.visor.hoja-conexion .btn{background:var(--morado);color:#fff;border:0;width:100%}
.visor.hoja-conexion .btn.sec{background:#fff;color:var(--profundo);border:1.5px solid var(--arena)}
.visor.hoja-conexion .lnk{background:none;border:0;color:var(--morado);font-weight:700}

/* Etapa 3 · estado común con detalle del módulo, pedir material, pestañas de ficha */
.est-det { font-size: 12px; color: var(--gris, #5f5866); align-self: center; margin-left: 2px; }
.pm-ren { display: grid; grid-template-columns: minmax(0, 1fr) 84px auto auto; gap: 8px; align-items: center; padding: 8px 0; border-bottom: 1px solid #eee; }
.pm-ren:last-child { border-bottom: 0; }
.pm-ren .txt { min-width: 0; } .pm-ren .txt b { display: block; overflow-wrap: anywhere; } .pm-ren .txt small { color: var(--gris, #5f5866); }
.pm-ren input { width: 100%; min-height: 44px; } .pm-ren .uni { font-size: 13px; color: var(--gris, #5f5866); }
@media (max-width: 420px) { .pm-ren { grid-template-columns: minmax(0, 1fr) 72px; } .pm-ren .uni { display: none; } .pm-ren .lnk { grid-column: 1 / -1; justify-self: start; } }
.pestanas-ficha { display: flex; gap: 6px; overflow-x: auto; margin: 4px 0 12px; padding-bottom: 2px; scrollbar-width: thin; }
.pestanas-ficha button { flex: 0 0 auto; min-height: 44px; padding: 8px 14px; border-radius: 22px; border: 1px solid #d8d2dc; background: #fff; color: inherit; font: inherit; cursor: pointer; }
.pestanas-ficha button[aria-selected="true"] { background: var(--morado, #582a7c); border-color: var(--morado, #582a7c); color: #fff; }
.panel-ficha[hidden] { display: none !important; }

/* Inicio por áreas (3-nov-2026): pendientes por módulo arriba, áreas con sus módulos debajo; sin menú lateral */
@media (min-width:900px){main.ini-ancho{max-width:1200px}}
.ini-sec{margin:0 0 26px}
.ini-cab{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 10px}
.ini-tit{margin:0;font:800 19px/1.25 'Red Hat Display',system-ui,sans-serif;color:var(--tinta)}
.ini-todo{font:700 14.5px 'Red Hat Display',sans-serif;color:var(--magenta);text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.ini-nota{color:var(--gris);font-size:14px}
.ini-n{flex:none;min-width:24px;height:22px;padding:0 7px;border-radius:999px;background:var(--magenta);color:#fff;font:800 12px/22px 'Red Hat Display',sans-serif;text-align:center}
.ini-pend{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}
.ini-pcard{display:flex;flex-direction:column;gap:4px;background:#fff;border:1.5px solid var(--arena);border-radius:16px;padding:14px;color:var(--tinta);text-decoration:none;min-height:44px}
.ini-pcard:hover{border-color:var(--morado)}.ini-pcard:focus-visible{outline:2px solid var(--morado);outline-offset:2px}
.ini-pnum{font:800 30px/1 'Red Hat Display',sans-serif;color:var(--profundo)}
.ini-pcard b{font-size:15.5px;line-height:1.25;margin-top:4px}
.ini-pcard small{color:var(--gris);font-size:13px;line-height:1.3}
.ini-pcard .e-venc,.ini-pcard .e-hoy,.ini-pcard .e-sem{font:700 12.5px 'Red Hat Display',sans-serif}
.e-venc{color:var(--rojo)}.e-hoy{color:var(--magenta)}.e-sem{color:var(--gris)}
.ini-areas{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}
@media (min-width:700px){.ini-areas{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1100px){.ini-areas{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
.ini-area{background:#fff;border:1px solid var(--arena);border-radius:18px;padding:6px 14px 12px}
.ini-acab{display:flex;align-items:center;gap:12px;padding:10px 0;min-height:56px;cursor:pointer;list-style:none;color:var(--tinta)}
.ini-acab::-webkit-details-marker{display:none}
.ini-acab:focus-visible{outline:2px solid var(--morado);outline-offset:2px;border-radius:12px}
.ini-ic{width:42px;height:42px;border-radius:12px;display:flex;align-items:center;justify-content:center;font:800 14.5px 'Red Hat Display',sans-serif;color:#fff;flex:none}
.ini-ic.grande{width:58px;height:58px;border-radius:16px;font-size:19px}
.t-profundo{background:var(--profundo)}.t-magenta{background:var(--magenta)}.t-morado{background:var(--morado)}.t-cian{background:#0a7f91}.t-verde{background:#3f7d19}.t-naranja{background:#b35c00}.t-gris{background:#5b5562}
.ini-anom{flex:1;min-width:0}
.ini-anom b{display:block;font-size:16.5px;line-height:1.2}
.ini-anom small{display:block;color:var(--gris);font-size:13px;line-height:1.3;margin-top:2px}
.ini-flecha{width:18px;height:18px;flex:none;border-right:2.5px solid #6b4d80;border-bottom:2.5px solid #6b4d80;transform:rotate(45deg) scale(.6);margin:-4px 2px 0}
details[open]>.ini-acab .ini-flecha{transform:rotate(225deg) scale(.6);margin-top:6px}
@media (min-width:900px){.ini-flecha{display:none}.ini-acab{cursor:default}}
.ini-sub{border-top:1px solid #efe9df;padding:8px 0 4px}
.ini-subt{font:700 12px 'Red Hat Display',sans-serif;text-transform:uppercase;letter-spacing:.05em;color:#6b4d80;padding:2px 8px 4px}
.ini-mod{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 8px;border-radius:10px;font-size:15px;color:var(--tinta);text-decoration:none}
.ini-mod:hover{background:#f3ecf7;color:var(--profundo)}.ini-mod:focus-visible{outline:2px solid var(--morado);outline-offset:-2px}
.ini-mod span:first-child{flex:1;min-width:0}
.ini-abrir{display:flex;align-items:center;min-height:44px;padding:0 8px;margin-top:2px;border-top:1px solid #efe9df;font:700 14px 'Red Hat Display',sans-serif;color:var(--magenta);text-decoration:none}
/* Pantalla de un área (#org/…) */
.org-cab{display:flex;align-items:center;gap:16px;margin:4px 0 20px}
.org-cab h2{margin:0;font:800 24px/1.2 'Red Hat Display',sans-serif;color:var(--profundo)}
.org-cab p{margin:4px 0 0;color:var(--gris);font-size:15px}
.org-pend{margin:0 0 22px}
.org-sub{margin:0 0 22px}.org-sub .ini-tit{margin-bottom:10px}
.org-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.org-tile{display:flex;flex-direction:column;gap:6px;background:#fff;border:1.5px solid var(--arena);border-radius:16px;padding:16px;color:var(--tinta);text-decoration:none;min-height:44px}
.org-tile:hover{border-color:var(--morado)}.org-tile:focus-visible{outline:2px solid var(--morado);outline-offset:2px}
.org-tt{display:flex;align-items:center;gap:10px}.org-tt b{flex:1;font-size:16px;line-height:1.25}
.org-td{color:var(--gris);font-size:14px;line-height:1.4}

/* Barra de navegación sin menú lateral. Teléfono: abajo (Inicio · Me toca · Capturar · Buscar · Cuenta). */
#nav-fija .nav-inicio{order:1}#nav-fija .nav-toca{order:2}#nav-fija .nav-capturar{order:3}#nav-fija .nav-buscar{order:4}#nav-fija .nav-cuenta{order:5}
#nav-fija .nav-kbd{display:none}
.nav-ini{width:26px;height:26px;border-radius:50%;background:var(--oro);color:var(--profundo);display:flex;align-items:center;justify-content:center;font:800 11px 'Red Hat Display',sans-serif;letter-spacing:.02em}
/* Computadora: barra superior con la marca, la búsqueda, Capturar, Lo que me toca y la cuenta */
@media (min-width:1000px){
  #nav-fija{top:0;bottom:auto;left:0;right:0;width:auto;height:64px;flex-direction:row;align-items:center;justify-content:flex-start;background:var(--profundo);border:0;border-bottom:3px solid var(--oro);
    padding:0 max(20px,calc((100vw - 1200px) / 2));gap:10px;box-shadow:none}
  #nav-fija::after{content:"";position:absolute;left:0;right:0;bottom:-7px;height:4px;background:var(--brotes);pointer-events:none}
  #nav-fija .nav-marca{order:0;display:flex;align-items:center;gap:10px;flex:none;margin:0 14px 0 0;padding:0;min-height:44px;background:none;color:#fff;font:800 18px 'Red Hat Display',sans-serif}
  #nav-fija .nav-marca img{height:30px}
  #nav-fija a{flex:none;flex-direction:row;justify-content:center;gap:8px;padding:0 14px;min-height:44px;font-size:15px;color:#fff;background:rgba(255,255,255,.1);text-align:left}
  #nav-fija a:hover{background:rgba(255,255,255,.2)}
  #nav-fija a[aria-current=page]{color:#fff;background:rgba(255,255,255,.26)}
  #nav-fija a:focus-visible{outline:2px solid var(--oro);outline-offset:2px}
  #nav-fija .nav-inicio{display:none}
  #nav-fija .nav-buscar{order:1;flex:1 1 auto;max-width:560px;justify-content:flex-start;font-weight:500;color:rgba(255,255,255,.86);font-family:Roboto,sans-serif}
  #nav-fija .nav-buscar .et{flex:1}
  #nav-fija .nav-kbd{display:inline-block;font:700 12px 'Red Hat Display',sans-serif;border:1px solid rgba(255,255,255,.45);border-radius:6px;padding:1px 7px;color:#fff}
  #nav-fija .nav-capturar{order:2;margin-left:auto}#nav-fija .nav-toca{order:3}
  #nav-fija .nav-cuenta{order:4;background:none;padding:0;width:44px}#nav-fija .nav-cuenta .et{display:none}
  #nav-fija .nav-cuenta:hover{background:none}
  #nav-fija .nav-ini{width:42px;height:42px;font-size:14px}
  #nav-fija .n{position:static;margin-left:2px}
  #nav-fija .largo{display:inline}#nav-fija .corto{display:none}
  body.con-nav{padding-bottom:0;padding-left:0;padding-top:71px}
  body.con-nav #aviso{bottom:calc(18px + var(--seguro-abajo))}
  /* debajo, cada pantalla conserva su título y «Regresar» en una franja clara */
  body.con-nav .barra{top:71px;background:#fff;color:var(--profundo);border-bottom:1px solid var(--arena);min-height:56px}
  body.con-nav .barra::after{display:none}
  body.con-nav .barra .atras,body.con-nav .barra .ir-inicio{background:#f3ecf7;color:var(--morado)}
  body.con-nav .barra .estado-red{background:#f3ecf7;color:var(--profundo)}
  body.con-nav .barra .marca{display:none}
  body.con-nav .barra-inicio{display:none}
}
@media (min-width:1000px){body.con-nav .barra{padding-left:max(20px,calc((100vw - 1200px) / 2));padding-right:max(20px,calc((100vw - 1200px) / 2))}}

/* Nov-2026: el aviso vacío ya no tapa la barra inferior y el selector de archivo oculto no se asoma en «Tomar foto» */
#aviso:not(.ver){visibility:hidden}
input[type=file][hidden]{display:none}
