:root{
  --bg:#0b0f1a;
  --card:#0f1220;
  --neon1:#ffdb4d;
  --neon2:#ff4df0;
  --accent:#3df7ff;
  --muted:#bfc7d6;
}

*{box-sizing:border-box}
html,body{height:100%;margin:0;font-family:Montserrat,system-ui,-apple-system,Segoe UI,Roboto,"Helvetica Neue",Arial}
body{
  background:
    radial-gradient(ellipse at 10% 10%, rgba(255,77,240,0.06), transparent 10%),
    radial-gradient(ellipse at 90% 90%, rgba(63,247,255,0.03), transparent 15%),
    linear-gradient(180deg,#071026 0%, #071427 50%, #0b0f1a 100%);
  color: #e6eef6;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
}

/* Header neon */
.header{
  text-align:center;padding:28px 12px 12px;
}
.neon-title{
  font-family: 'Press Start 2P', monospace;
  font-size:28px;
  letter-spacing:2px;
  color:var(--neon1);
  text-shadow:
    0 0 6px rgba(255,219,77,0.7),
    0 0 18px rgba(255,77,240,0.15),
    0 6px 30px rgba(0,0,0,0.6);
  display:inline-block;
  padding:8px 18px;
  border-radius:12px;
  background: linear-gradient(90deg, rgba(255,255,255,0.02), rgba(255,77,240,0.03));
  box-shadow: inset 0 -6px 30px rgba(0,0,0,0.5);
}
.sub{color:var(--muted);margin-top:6px}

/* Layout */
.wrap{
  max-width:1100px;margin:18px auto;padding:12px;display:grid;gap:18px;
  grid-template-columns: 1fr 420px;
  align-items:start;
}
.card{
  background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.02));
  border-radius:14px;padding:18px;border:1px solid rgba(255,255,255,0.03);
  box-shadow: 0 6px 30px rgba(0,0,0,0.5);
}


/* buttons */
.btn{
  background:linear-gradient(90deg,var(--neon2),var(--accent));
  border:none;color:#041019;padding:10px 14px;border-radius:10px;font-weight:600;cursor:pointer;
  box-shadow: 0 6px 18px rgba(0,0,0,0.5);
}
.btn.small{padding:6px 8px;font-size:13px;border-radius:8px}
.btn.neon{
  background: linear-gradient(90deg, var(--neon1), var(--neon2));
  color:#031019;
  text-shadow: 0 1px 0 rgba(255,255,255,0.25);
}
.btn:disabled{opacity:0.45;cursor:not-allowed}

/* controls */
.controls{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:8px 0}
.controls input[type="text"], .controls input[type="search"], input#prefijo{
  padding:10px;border-radius:10px;border:1px solid rgba(255,255,255,0.06);background:rgba(255,255,255,0.02);color:inherit;
  min-width:180px;outline:none;flex:1;
}
.muted{color:var(--muted);margin:0 0 8px 0}
.small{font-size:12px}

/* QR area */
.qr-area{display:flex;gap:14px;align-items:center;flex-wrap:wrap;justify-content:center}
.qr-preview{width:160px;height:160px;border-radius:10px;background:linear-gradient(180deg, rgba(255,255,255,0.02), rgba(0,0,0,0.02));display:flex;align-items:center;justify-content:center;padding:6px}
.qr-info{min-width:180px;text-align:left}
.qr-info #qrIdText{font-family: 'Press Start 2P', monospace;font-size:12px;color:var(--neon1);margin-bottom:6px}

/* lista */
.lista{display:flex;flex-direction:column;gap:8px;max-height:240px;overflow:auto;padding:6px}
.lista .item{display:flex;align-items:center;gap:10px;background:rgba(255,255,255,0.02);padding:8px;border-radius:8px;border:1px solid rgba(255,255,255,0.02)}
.lista .item .meta{flex:1;font-size:13px}
.tag{display:inline-block;padding:4px 8px;border-radius:8px;background:#081425;color:var(--neon1);font-weight:700}

/* resultado */
.resultado{margin-top:12px;padding:12px;border-radius:10px;background:linear-gradient(180deg, rgba(255,255,255,0.01), rgba(0,0,0,0.02));font-weight:700}

/* scanner */
#reader{border-radius:10px;overflow:hidden;background:#060714;padding:6px}
.scanner-controls{margin-top:10px;display:flex;gap:8px;}

/* footer */
.footer{text-align:center;color:var(--muted);padding:16px 6px}

/* responsive */
@media (max-width:980px){
  .wrap{grid-template-columns:1fr; padding:10px}
}
