@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=IBM+Plex+Mono:wght@500;600&display=swap');

:root{
  /* misma paleta que el resto del sitio (PCB navy + traza verde + cobre) */
  --navy-900:#081b2e;
  --navy-800:#0b2c4d;
  --navy-700:#123a63;
  --trace:#2bb673;
  --trace-dim:#1f8e5a;
  --copper:#d98a4a;
  --amber:#e8a33d;
  --danger:#e0564f;
  --bg:#eef2f6;
  --surface:#ffffff;
  --surface-2:#f6f8fb;
  --border:#dde4ec;
  --text:#152437;
  --text-dim:#5b6b7f;
  --text-faint:#8b98a8;

  --font-ui:'Inter',system-ui,-apple-system,Segoe UI,sans-serif;
  --font-mono:'IBM Plex Mono',ui-monospace,SFMono-Regular,Menlo,monospace;

  --radius-s:6px;
  --radius-m:10px;
  --radius-l:16px;
  --shadow-1:0 1px 2px rgba(8,27,46,.06), 0 1px 1px rgba(8,27,46,.04);
  --shadow-2:0 8px 24px rgba(8,27,46,.10);
}

*,*::before,*::after{box-sizing:border-box;}
html,body{height:100%;}
body{
  margin:0;font-family:var(--font-ui);color:var(--text);background:var(--bg);
  -webkit-font-smoothing:antialiased;
}
h1,h3{margin:0 0 .4rem;font-weight:600;}
p{margin:0 0 .5rem;}
button{font-family:inherit;}
:focus-visible{outline:2px solid var(--trace);outline-offset:2px;}
[hidden]{display:none !important;}

/* ===================== NAV / FOOTER ===================== */
.consulta-nav{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1rem 1.5rem;background:var(--navy-900);color:#fff;
  position:sticky;top:0;z-index:10;
}
.consulta-brand{display:flex;align-items:center;gap:.6rem;color:#fff;text-decoration:none;font-weight:600;}
.consulta-mark{
  width:34px;height:34px;border-radius:9px;flex:none;
  background-image:url('../../img/Logo.png');background-size:cover;background-position:center;
}
.consulta-back{color:#cfe0ef;text-decoration:none;font-size:.88rem;}
.consulta-back:hover{color:var(--trace);}

.consulta-footer{
  text-align:center;color:var(--text-faint);font-size:.82rem;padding:2rem 1rem;
}

/* ===================== MAIN ===================== */
.consulta-main{max-width:640px;margin:0 auto;padding:2.5rem 1.2rem 1rem;}
.consulta-intro{text-align:center;margin-bottom:1.6rem;}
.consulta-intro h1{font-size:1.5rem;color:var(--navy-900);}
.consulta-intro p{color:var(--text-dim);max-width:48ch;margin:0 auto;}

.consulta-card{
  background:var(--surface);border-radius:var(--radius-l);box-shadow:var(--shadow-2);
  padding:1.4rem;border:1px solid var(--border);
}

.consulta-tabs{display:flex;gap:.4rem;margin-bottom:1.2rem;background:var(--surface-2);padding:.3rem;border-radius:var(--radius-m);}
.consulta-tab{
  flex:1;padding:.55rem .8rem;border:none;background:transparent;border-radius:calc(var(--radius-m) - 4px);
  color:var(--text-dim);font-weight:600;font-size:.88rem;cursor:pointer;
}
.consulta-tab.active{background:var(--surface);color:var(--navy-900);box-shadow:var(--shadow-1);}

.consulta-form{display:flex;flex-direction:column;gap:.9rem;}
.field{display:flex;flex-direction:column;gap:.3rem;font-size:.85rem;color:var(--text-dim);}
.field input{
  padding:.6rem .7rem;border:1px solid var(--border);border-radius:var(--radius-s);
  font-size:.95rem;font-family:inherit;color:var(--text);
}
.field input:focus-visible{border-color:var(--trace);}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.4rem;
  padding:.65rem 1.1rem;border-radius:var(--radius-s);border:none;
  font-weight:600;font-size:.9rem;cursor:pointer;text-decoration:none;
}
.btn-primary{background:var(--trace);color:#fff;}
.btn-primary:hover{background:var(--trace-dim);}
.btn-primary:disabled{opacity:.6;cursor:default;}
.btn-block{width:100%;}

.form-msg{margin-top:.9rem;padding:.6rem .8rem;border-radius:var(--radius-s);font-size:.88rem;}
.form-msg.error{background:rgba(224,86,79,.12);color:#a8322c;}
.form-msg.ok{background:rgba(43,182,115,.12);color:var(--trace-dim);}

/* ===================== RESULTADOS ===================== */
.consulta-resultados{display:flex;flex-direction:column;gap:1.1rem;margin-top:1.4rem;}

.resultado-card{
  display:flex;
  background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-l);
  box-shadow:var(--shadow-1);overflow:hidden;
  transition:box-shadow .15s ease, transform .15s ease;
}
.resultado-card:hover{box-shadow:var(--shadow-2);transform:translateY(-1px);}

.resultado-accent{width:6px;flex:none;background:var(--border);}
.resultado-card--revision .resultado-accent{background:var(--amber);}
.resultado-card--confirmacion .resultado-accent{background:var(--copper);}
.resultado-card--reparacion .resultado-accent{background:var(--trace);}
.resultado-card--entregado .resultado-accent{background:var(--navy-700);}
.resultado-card--entregado_sin_reparar .resultado-accent{background:var(--danger);}

.resultado-body{flex:1;padding:1.2rem 1.3rem;min-width:0;}

.resultado-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.8rem;flex-wrap:wrap;}
.resultado-titulo h3{font-size:1.05rem;color:var(--navy-900);margin:0;}
.resultado-sub{font-size:.85rem;color:var(--text-dim);margin:.15rem 0 0;}

.resultado-badge{
  flex:none;display:inline-flex;align-items:center;gap:.4rem;
  padding:.32rem .75rem;border-radius:999px;font-size:.74rem;font-weight:700;
  background:var(--surface-2);color:var(--text-dim);white-space:nowrap;
}
.resultado-badge i{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none;}
.resultado-badge.revision{background:rgba(232,163,61,.15);color:#8a5c12;}
.resultado-badge.confirmacion{background:rgba(217,138,74,.16);color:#8a4a12;}
.resultado-badge.reparacion{background:rgba(43,182,115,.15);color:var(--trace-dim);}
.resultado-badge.entregado{background:rgba(18,58,99,.1);color:var(--navy-700);}
.resultado-badge.entregado_sin_reparar{background:rgba(224,86,79,.12);color:#a8322c;}

.resultado-ids{
  display:flex;flex-wrap:wrap;gap:.3rem 1rem;margin-top:.7rem;
  font-size:.78rem;color:var(--text-faint);font-family:var(--font-mono);
}
.resultado-ids strong{color:var(--text-dim);font-weight:600;}

.resultado-diagnostico{
  margin-top:.9rem;padding:.7rem .85rem;background:var(--surface-2);
  border-left:3px solid var(--trace);border-radius:0 var(--radius-s) var(--radius-s) 0;
}
.resultado-diagnostico-label{
  display:block;font-size:.7rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;
  color:var(--text-faint);margin-bottom:.25rem;
}
.resultado-diagnostico p{margin:0;color:var(--text);font-size:.9rem;line-height:1.4;}
.resultado-diagnostico.resultado-vacio{border-left-color:var(--border);}
.resultado-diagnostico.resultado-vacio p{color:var(--text-faint);font-style:italic;}

.resultado-datos{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:.9rem 1.2rem;
  margin-top:1rem;padding-top:.8rem;border-top:1px dashed var(--border);
}
.resultado-dato{display:flex;flex-direction:column;font-size:.76rem;color:var(--text-faint);}
.resultado-dato strong{font-size:.92rem;color:var(--text);font-weight:600;margin-top:.1rem;}
.resultado-dato strong.texto-alerta{color:#a8322c;}
.resultado-dato strong.texto-ok{color:var(--trace-dim);}

@media (max-width:480px){
  .consulta-main{padding:1.6rem .9rem;}
  .consulta-card{padding:1.1rem;}
  .resultado-body{padding:1rem 1rem;}
}
