/* tekio · estilo A (como INFOT, en naranja TEKIO): barra naranja, pestañas debajo, tarjetas blancas. */
:root{--naranja:#E85A28;--naranja-osc:#B8441D;--claro:#F6F6F6;--texto:#191818;--suave:#FDEDE6;--borde:#e1e1e1;--gris:#6b6b6b;--rojo:#b42318;--verde:#1a7f37}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:15px Inter,Arial,sans-serif;color:var(--texto);background:var(--claro)}
[hidden]{display:none!important}
a{color:var(--naranja-osc)}
/* entrada */
#login{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:16px}
.acc{background:#fff;border:1px solid var(--borde);border-radius:12px;padding:24px 20px;width:100%;max-width:380px;text-align:center}
.acc .logo{width:170px;max-width:70%;display:block;margin:0 auto 12px}
.acc h1{font-size:18px;margin:6px 0 2px}
.acc p{margin:0 0 14px;color:var(--gris);font-size:13px}
.acc form{display:flex;flex-direction:column;gap:10px}
.acc .peq{margin:14px 0 0;font-size:13px}
.nombres{display:flex;flex-direction:column;gap:8px}
/* barra, pestañas y contenido */
header{background:var(--naranja);color:#fff;padding:8px 12px;display:flex;align-items:center;gap:10px;position:sticky;top:0;z-index:5}
header .lg{background:#fff;border-radius:6px;padding:3px 8px;display:flex;align-items:center;flex-shrink:0}
header .lg img{height:20px;display:block}
header div.t{flex:1;min-width:0;line-height:1.2}
header b{display:block;font-size:15px}
header small{font-size:12px;opacity:.95}
header small a{color:#fff}
header button{background:transparent;color:#fff;border:1px solid #ffffffaa;border-radius:6px;padding:6px 10px;font:600 13px Inter,Arial;cursor:pointer}
nav{display:flex;background:var(--naranja-osc);overflow-x:auto;position:sticky;top:46px;z-index:4}
nav button{flex:1 0 auto;background:none;border:0;color:#fde3d8;padding:12px 12px;font:600 14px Inter,Arial;cursor:pointer;white-space:nowrap}
nav button.on{background:var(--claro);color:var(--naranja-osc)}
main{padding:12px;max-width:960px;margin:0 auto}
h3{margin:16px 0 8px;color:var(--naranja-osc);font-size:15px}
.g{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:9px}
label{display:flex;flex-direction:column;gap:3px;font-size:12.5px;color:var(--gris)}
input,select,textarea{font:16px Inter,Arial;padding:9px;border:1px solid #d6d6d6;border-radius:7px;background:#fff;color:var(--texto);min-width:0;width:100%}
textarea{font-size:14px}
input:focus,select:focus,textarea:focus{outline:2px solid var(--naranja);border-color:var(--naranja)}
.btn{background:var(--naranja);color:#fff;border:0;border-radius:7px;padding:12px 18px;font:700 15px Inter,Arial;cursor:pointer;min-height:44px}
.btn.l{background:#fff;color:var(--naranja-osc);border:1px solid var(--naranja)}
.btn.chico{min-height:34px;padding:7px 12px;font-size:13px}
.btn:disabled{opacity:.6;cursor:wait}
.fila{display:flex;gap:8px;align-items:end;flex-wrap:wrap}
.fila>*{flex:1 1 140px}
.it{background:#fff;border:1px solid var(--borde);border-radius:8px;padding:10px;margin:8px 0}
.it .top{display:flex;gap:8px;align-items:end;flex-wrap:wrap}
.it .top>label{flex:1 1 120px}
.it small{color:var(--gris)}
.quitar{background:none;border:0;color:var(--rojo);font-size:20px;cursor:pointer;padding:6px 8px}
.alerta{color:var(--rojo);font-size:13px;margin-top:4px}
.tot{background:var(--suave);border-radius:8px;padding:12px;margin-top:12px}
.tot div{display:flex;justify-content:space-between;padding:2px 0}
.tot .g1{font-size:18px;font-weight:700}
.tot .btn{width:100%;margin-top:10px}
.lista{background:#fff;border:1px solid var(--borde);border-radius:8px;overflow:hidden;margin:6px 0}
.ln{display:flex;justify-content:space-between;gap:10px;padding:10px;border-bottom:1px solid #eee;align-items:center}
.ln:last-child{border-bottom:0}
.ln small{color:var(--gris);display:block}
.ln.toca{cursor:pointer}
.ln.toca:hover{background:var(--suave)}
table.t{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--borde);border-radius:8px;overflow:hidden;font-size:13.5px}
table.t th{background:#f2f2f2;text-align:left;padding:7px 8px;font-size:12px;color:var(--gris)}
table.t td{padding:7px 8px;border-top:1px solid #eee}
.r{text-align:right}
.nota{color:var(--gris);font-size:13px;margin:6px 0}
.aviso{background:#fff4d6;border:1px solid #f0d58a;border-radius:7px;padding:9px;margin:8px 0;font-size:13.5px}
.box{background:#fff;border:1px solid var(--borde);border-radius:8px;padding:12px;margin:8px 0}
pre.wa{white-space:pre-wrap;font:13px Inter,Arial;background:#fff;border:1px solid var(--borde);border-radius:8px;padding:10px;max-height:260px;overflow:auto}
.ok{color:var(--verde);font-weight:700}
.mal{color:var(--rojo);font-weight:700}
#msg{position:fixed;left:12px;right:12px;top:10px;padding:12px 14px;border-radius:8px;color:#fff;font-weight:600;display:none;z-index:20;
  box-shadow:0 2px 10px #0004;max-width:560px;margin:0 auto;cursor:pointer}
#msg.ok{background:var(--verde);color:#fff}
#msg.mal{background:var(--rojo);color:#fff}
#msg.info{background:var(--texto);color:#fff}
#prt{display:none}
@media print{body>*{display:none!important}#prt{display:block!important}}
@media (min-width:900px){main{padding:18px 24px}}
a.btn{display:block;text-decoration:none;text-align:center}
